OVH Cloud OVH Cloud

SQL-DAO-Access-NumAuto

2 réponses
Avatar
Mike
Messieurs-dames, bonsoir,

Dans un systeme utilisant plusieurs base de données (fichiers mdb), une
table avec un numéro auto s'incremente ainsi que les tables liées à ce
numéro auto.

Lors du transfert d'une base à l'autre, de la table source possedant son
numéro auto à la table destination possedant aussi son propre numero auto,
le transfert est correct.

Le transfert etant par SQL, et par la commande "Insert into", les tables
liées, ne peuvent etre transférées, le numero auto les reliant à la table
principale n'effectue pas son boulot.

Outre le fait de ne pas etre clair, je pense simplement devoir recuperer ce
numero auto de la table principale de destination pour en faire le numero
unique des tablées liées dans la base de destination.

J'ai bien une technique en DAO, mais ca ne m'inspire pas du tout...

Il me semble que c'est [debug.print rst("xxxx")]

J'ai besoin de certitudes et d'aide sur ce coup.

Merci

2 réponses

Avatar
Daniel Carollo
Bonjour Mike!

En fait, il faut transferer le numero d'index (qui n'est pas autoincrement
dans les tables liees) dans la table principale (en le renomant a VieuxID,
par exemple), ainsi que dans les tables secondaires. Puis, a l'aide d'une
requete de mise a jour, inserer le "nouvel" index qui a ete genere lors de
l'insert dans la base principale finale. On peut alors laisser tomber les
vieux Index, sauf s'il faut garder une relation avec les anciennes bases,
mais alors la, ca voudrait probablement dire que l'etude de l'application
pourrait serieusement etre en cause...

J'espere que ca vous aide a redemarrer.

--
Daniel :-)

Computing Technologies International - www.computing-tech.com - We
provide solutions...


"Mike" wrote in message
news:407b00fb$0$293$
Messieurs-dames, bonsoir,

Dans un systeme utilisant plusieurs base de données (fichiers mdb), une
table avec un numéro auto s'incremente ainsi que les tables liées à ce
numéro auto.

Lors du transfert d'une base à l'autre, de la table source possedant son
numéro auto à la table destination possedant aussi son propre numero auto,
le transfert est correct.

Le transfert etant par SQL, et par la commande "Insert into", les tables
liées, ne peuvent etre transférées, le numero auto les reliant à la table
principale n'effectue pas son boulot.

Outre le fait de ne pas etre clair, je pense simplement devoir recuperer


ce
numero auto de la table principale de destination pour en faire le numero
unique des tablées liées dans la base de destination.

J'ai bien une technique en DAO, mais ca ne m'inspire pas du tout...

Il me semble que c'est [debug.print rst("xxxx")]

J'ai besoin de certitudes et d'aide sur ce coup.

Merci


Avatar
Mike
En fait, il faut transferer le numero d'index (qui n'est pas
autoincrement dans les tables liees) dans la table principale (en le
renomant a VieuxID, par exemple), ainsi que dans les tables
secondaires. Puis, a l'aide d'une requete de mise a jour, inserer le
"nouvel" index qui a ete genere lors de l'insert dans la base
principale finale. On peut alors laisser tomber les vieux Index, sauf
s'il faut garder une relation avec les anciennes bases, mais alors
la, ca voudrait probablement dire que l'etude de l'application
pourrait serieusement etre en cause...

J'espere que ca vous aide a redemarrer.



Oula...Tres sympa l'idée...En fait, j'ai truandé le truc...

Je bascule la table contenant le numauto dans la base de destination.
Je recupere le nouveau num auto, et que j'affecte aux tables liées dans
l'ancienne base, puis je transfere les données affectées...En fait, je passe
par des tables intermediaires...Viva DAO...

Merci pour la prise de tete a me comprendre et a me repondre...