Comment creer une table dans un code vb6.0 a partir des champs de d'autre table

Résolu
rachidos001 Messages postés 44 Date d'inscription mardi 12 avril 2005 Statut Membre Dernière intervention 23 mars 2006 - 21 mars 2006 à 10:11
rachidos001 Messages postés 44 Date d'inscription mardi 12 avril 2005 Statut Membre Dernière intervention 23 mars 2006 - 22 mars 2006 à 10:08
bonjour,
j'ai un petit probleme c'est que je veux creer une table (temporaire) on utilisant des champs de autres tables
table_temp a partir de table1,tables2,table3
dans un code vb qui permet de la creer dans la base et l'utiliser lors de l'appelle


Les Tables:






<LI>Commande ( Dept, Operation, N°com, Date_recp, Date_trans, Date_aff, Centre, Client, Fournisseur, Design_mat, Confir, Date_confir, Obser )</LI>
<LI>Facture ( N°Fact,N°com, Date_Fact, Montant, Devise, Nbr_Colis, Poids, Trans,Moy, Date_arriv, N°Avis, Doc,N°Doc,N°OT,Date_OT, Sit )</LI>
<LI>Instance ( N°Inst,N°Fact, Date_inst, N°Ordre, Obser2 )</LI>
merci de votre aide

7 réponses

AdilELHASSOUNI Messages postés 145 Date d'inscription vendredi 11 janvier 2002 Statut Membre Dernière intervention 19 juin 2007 1
21 mars 2006 à 10:32
Salut
tu peux utiliser une requete d'action "SELECT ListeDesChamps INTO TableTemp FROM Source" comme argument de l'insctruction Execute de d'une variable Connection
Si tu veux plus de details, il suffit de le demander.
Bonne chance
3
cs_jordinette Messages postés 134 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 5 avril 2007
21 mars 2006 à 11:03
Bonjour rachidos001
Si tu utilises une base Access je ne pense pas que la proposition de AdilELHASSOUNI fonctionne. enfin perso j'ai pas pu utilisé le "Select Into" sur access... Mais j'ai du faire un morceau de code pour créer une table, puis faire un "insert into" dans cette table créer...

exemple de code vba dans Access

sqltes = "CREATE TABLE Info ( champ1 INTEGER , champ2 TEXT(250), champ3 INTEGER , champ4 INTEGER );"
CurrentDb.Execute sqltes

sqltess = "INSERT INTO Info SELECT table1.champ1 , table2.champ2, table3.champ3, table4.champ4 FROM table1, table2, table3, table4"
CurrentDb.Execute sqltess

Jordinette
3
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016
21 mars 2006 à 11:20
salut,



je ne comprends pas le terme temporaire.

as-tu besoin de créer physiquement la table dans la base de données ?



si oui, c'est une source potentielle d'erreurs et il faudra la supprimer ce qui est une autre source potentielle d'erreurs.

si tu peux te contenter d'une table créée en dehors de la bdd il suffit de requêter :



"SELECT table1.champ1, table2.champ2, table3.champ3 FROM table1, table2, table3"

la bdd te renvoies une table (champ1, champ2, champ3) que tu valorises comme tu veux.



[ Dalida ]<hr>
pensez à indiquer le langage utilisé et sa version !
3
rvblog Messages postés 792 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 12 juin 2012 7
21 mars 2006 à 13:57
Re-salut Rachidos01,

tu n'avais pas tout dit (http://www.vbfrance.com/forum.v2.aspx?ID=691916), ton erreur arrive donc sur la ligne rst.recordcount,
mais n'as tu pas déjà fermé ton recordset avant de questionner le recordcount?

rvblogn
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rachidos001 Messages postés 44 Date d'inscription mardi 12 avril 2005 Statut Membre Dernière intervention 23 mars 2006
22 mars 2006 à 09:57
merci mes amis
c'est tres gentil de votre part,je penser pas avoir toutes ces interventions chaqu'un me donne son avis ,sans vos suggestion j'avais pas la moindre chance de trouver la solution
mais hamdoli allah je suis arrivée
merci encore a vous tous
j'ai fait une verification de mon form_load et aussi la procedure qui contient la requete ,et ca marche
1000 merci a vous tous
3
rachidos001 Messages postés 44 Date d'inscription mardi 12 avril 2005 Statut Membre Dernière intervention 23 mars 2006
21 mars 2006 à 12:10
ok je pense que j'etait pas assez claire
je developpe avec (ado) vb6.0 ,access 2000,que je doit la faire migrer vers SQL2000
je suis obliger de faire une table temporaire qui va contenir des information d'une jointure de 3 table , j'ai utiliser une requete mais ca pas marché c'est pour ca que j'ai pensé a creer une table chaque fois que j'execute mon appli pour m'aider a faire une recherche pour savoir la situation des commandes,factures,et instances
voici mes tables


Les Tables:






*Commande ( Dept, Operation, N°com, Date_recp, Date_trans, Date_aff, Centre, Client, Fournisseur, Design_mat, Confir, Date_confir, Obser )


*Facture ( N°Fact,N°com,Date_Fact, Montant, Devise, Nbr_Colis, Poids, Trans,Moy, Date_arriv, N°Avis, Doc,N°Doc,N°OT,Date_OT, Sit )

*Instance ( N°Inst,N°Fact,Date_inst, N°Ordre, Obser2 )

la requete qui marche pas si je l'integre dans mon code :

SELECT [Dept] AS Département, [Operation] AS Opération, [commande].[N°com] AS N°Commande, [Date_recp] AS [Date Récp], [Date_trans] AS [Date Trans], [Date_aff] AS [Date Aff], [Centre], [Client], [Fournisseur], [Design_mat] AS Désignation, [Confir] AS Confirmation, [Date_confir] AS [Date Confirm], [Obser] AS Observation1, [N°Fact] AS N°Facture, [Date_Fact] AS [Date Fact], [Montant], [Devise], [Nbr_Colis] AS [Nbr Colis], [Poids], [Trans] AS Transporteur, [Moy] AS Moyen, [Date_arriv] AS [Date Arrivée], [N°Avis], [Doc] AS [Document Joint], [N°Doc], [facture].[N°OT] AS N°OT, [Date_OT] AS [Date OT], [Sit] AS Transitaire, [N°Inst] AS N°Instance, [Date_inst] AS [Date Instance], [N°Ordre] AS N°Assurance, [Obser2] AS Observation2

FROM (commande LEFT JOIN facture ON ([commande].[N°com]=[facture].[N°Com]) AND ([commande].[operation]=[facture].[operat])) LEFT JOIN Instance ON [facture].[N°OT]=[Instance].[N°OT]
elle me donne une erreur lorsque je debougue rst.recordcount "cette operation n'est pas autoriser si l'objet est fermer",ma connection est declarer ds un module comme global

elle a etait fait avec l'assistant access
mais si je fais l'appelle a cette requette de mon code ca marche

tous ca m'as fait penser a creer une table disant temporaire qui se rempli avec cette requette pour que je puisse l'interoger chaque fois que j'execute cette partie de mon appli

merci de m'aider je suis completement perdu
0
rachidos001 Messages postés 44 Date d'inscription mardi 12 avril 2005 Statut Membre Dernière intervention 23 mars 2006
22 mars 2006 à 10:08
0
Rejoignez-nous