Bonjour, je vous explique mon problème du début.
En gros j'ai une BDD Access qui est sur un serveur A, et la même BDD sur un serveur B.
Je suis en train de programmer sur le serveur A un bouton "Exporter" qui me permet de récupérer toutes les données qui ont changées depuis le dernier export, et à l'inverse un bouton Importer sur le serveur B pour récupérer les données du serveur A.
J'ai aucun problème pour y arriver si il n'y a aucun ajout sur la BDD du serveur B, mais quand c'est le cas, comme toutes mes clés primaires de toutes mes tables sont de type "NumeroAuto", j'ai forcément des problèmes d'ID identiques à l'import.
Je me heurte donc à un problème, qui en amène un deuxième:
Quand j'insère de nouvelles données dans la BDD du serveur B, il faudrait que touts les IDs soient supérieures à un certains chiffre, pour éviter les duplications (disons 1 000 000).
J'essaye de faire ça via une macro de données Avant Modification, mais ce n'est pas possible de récupérer le maximum dans cette macro de données.
Après, je sais que si j'ajoute une donnée à la main avec un ID de 1 000 000, la prochaine sera directement à 1 000 001.
Mais ça m'amène à mon deuxième problème: Comme je suis censé faire une migration des BDDs du serveur A au B, quand j'importerais les données à la BDD du serveur B, il ne faut pas que les IDs importés soient aussi à plus de 1 000 000!
Petites précisions, le code est trop important pour que je modifie chaque INSERT, et les tables sont nombreuses aussi, avec pas mal de liaisons de clés étrangères, ce qui rendrait bien difficile de modifier l'ID juste après une insertion (et surtout pas très performant ^^)
Je ne vois donc pas trop comment faire, si quelqu'un à une idée...
Merci d'avance!





Répondre avec citation



Partager