actuellement, je récupère une ligne d'une base de donnée Access et je la
mets dans une variable de type ADODB.Fields
y a t-il un moyen simple de créer cette ligne dans une autre BDD ? si oui,
comment ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pierre Fauconnier
Bonsoir
Si je comprends bien, tu veux transférer des données access vers un autre gestionnaire de données.
Je procéderais comme suit
sub Transfert dim ado_Access as new adodb.connection dim ado_AutreBDD as new adodb.connection dim rs_Access as new adodb.recordset dim rs_AutreBdd as new adodb.recordset
rs_Access.open "select * from matable", ado_Access rs_autrebdd.open "select * from matable", ado_autrebdd
do while not rs_access.eof rs_autrebdd.addnew with rs_access rs_autre_bdd!champ1 = !champ1 rs_autre_bdd!champ2 = !champ2 ... end with rs_autrebdd.update rs_access.movenext loop
set rs_access = nothing set rs_autrebdd = nothing set ado_access= nothing set ado_autrebdd = nothing end sub
Je n'ai pas testé au niveau syntaxique, mais la logique devrait y être... Il faut évidemment pour cela que les structures des tables soient identiques. Sinon, tu dois "mapper" les champs, c'est-à-dire faire correspondre les noms des champs Access avec ceux de l'autre table.
Personnellement, je ne connais pas de moyen plus rapide que de scanner ligne par ligne, mais si quelqu'un a une astuce, je suis preneur
Ok?
-- Pierre Fauconnier () "Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe zen ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Emcy" a écrit dans le message de news:
bonjour,
actuellement, je récupère une ligne d'une base de donnée Access et je la mets dans une variable de type ADODB.Fields y a t-il un moyen simple de créer cette ligne dans une autre BDD ? si oui, comment ?
Bonsoir
Si je comprends bien, tu veux transférer des données access vers un autre
gestionnaire de données.
Je procéderais comme suit
sub Transfert
dim ado_Access as new adodb.connection
dim ado_AutreBDD as new adodb.connection
dim rs_Access as new adodb.recordset
dim rs_AutreBdd as new adodb.recordset
rs_Access.open "select * from matable", ado_Access
rs_autrebdd.open "select * from matable", ado_autrebdd
do while not rs_access.eof
rs_autrebdd.addnew
with rs_access
rs_autre_bdd!champ1 = !champ1
rs_autre_bdd!champ2 = !champ2
...
end with
rs_autrebdd.update
rs_access.movenext
loop
set rs_access = nothing
set rs_autrebdd = nothing
set ado_access= nothing
set ado_autrebdd = nothing
end sub
Je n'ai pas testé au niveau syntaxique, mais la logique devrait y être... Il
faut évidemment pour cela que les structures des tables soient identiques.
Sinon, tu dois "mapper" les champs, c'est-à-dire faire correspondre les noms
des champs Access avec ceux de l'autre table.
Personnellement, je ne connais pas de moyen plus rapide que de scanner ligne
par ligne, mais si quelqu'un a une astuce, je suis preneur
Ok?
--
Pierre Fauconnier (pierre.fauconnier@nospam.nospam)
"Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe
zen )
Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Emcy" <toto@bla.com> a écrit dans le message de news:
ezzlH6HEGHA.1032@TK2MSFTNGP11.phx.gbl...
bonjour,
actuellement, je récupère une ligne d'une base de donnée Access et je la
mets dans une variable de type ADODB.Fields
y a t-il un moyen simple de créer cette ligne dans une autre BDD ? si oui,
comment ?
Si je comprends bien, tu veux transférer des données access vers un autre gestionnaire de données.
Je procéderais comme suit
sub Transfert dim ado_Access as new adodb.connection dim ado_AutreBDD as new adodb.connection dim rs_Access as new adodb.recordset dim rs_AutreBdd as new adodb.recordset
rs_Access.open "select * from matable", ado_Access rs_autrebdd.open "select * from matable", ado_autrebdd
do while not rs_access.eof rs_autrebdd.addnew with rs_access rs_autre_bdd!champ1 = !champ1 rs_autre_bdd!champ2 = !champ2 ... end with rs_autrebdd.update rs_access.movenext loop
set rs_access = nothing set rs_autrebdd = nothing set ado_access= nothing set ado_autrebdd = nothing end sub
Je n'ai pas testé au niveau syntaxique, mais la logique devrait y être... Il faut évidemment pour cela que les structures des tables soient identiques. Sinon, tu dois "mapper" les champs, c'est-à-dire faire correspondre les noms des champs Access avec ceux de l'autre table.
Personnellement, je ne connais pas de moyen plus rapide que de scanner ligne par ligne, mais si quelqu'un a une astuce, je suis preneur
Ok?
-- Pierre Fauconnier () "Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe zen ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Emcy" a écrit dans le message de news:
bonjour,
actuellement, je récupère une ligne d'une base de donnée Access et je la mets dans une variable de type ADODB.Fields y a t-il un moyen simple de créer cette ligne dans une autre BDD ? si oui, comment ?