Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/07/2007, 10h36   #1
Invité de passage
 
Inscription : juillet 2007
Messages : 1
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 1
Points : 0
Points : 0
Par défaut Replica et clef primaire

Bonjour,

Mon problème est le suivant. J'ai besoin de fonctionner avec une replication de mes tables . Par contre, quand je fais la replication des tables ou j'ai des clefs primaires sur une variable numerique avec incrementation il me passe la nature du champ en entier aléatoire. Ce qui perturbe completement le systeme. Et il est impossible de repasser d'entier aléatoire en incrementiel.

J'avoue que je ne comprends pas du tout la logique qui fait que le systeme change la nature de ma variable au moment de la replication. Si quelqu'un avait une idée pour passer outre ce désagrement, ca m'aiderait, parce que la je seche completement.

Merci d'avance.
Amber est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/07/2007, 19h48   #2
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 482
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 482
Points : 7 577
Points : 7 577
Le pb avec les bases répliquées c'est qu'elles sont physiquements séparées et ne communiquent qu'au moment de la synchro donc Access ne peut pas savoir quel est le dernier numéro au niveau de l'ensemble des répliquats.

Ex dans une base A, le dernier mum = 100, donc prochain num devrait être 101 mais dans la base B, le dernier num = 500 donc le prochain num devrait être 501 dans la base A.

C'est insolvable donc Access utilise une astuce, il tire un nombre au hazard et la probabilité qu'il obtienne les deux même nombres dans les 2 bases est trés faible.

Il n'y a pas de solution autre que de gérer toi-même ta clef. Tu pourrais utiliser la date et l'heure ainsi qu'un code d'utilisateur pour créer une bonne clef unique.

Ou encore, garder ta clef unique (aléatoire) et associer une clef de séquencement que tu gères toi-même.

Attention : l'heure à seconde ne suffit pas forcément, une seconde pour un PC, par exemple à 2.0 Ghz qui fait donc 2 milliard d'opp à la seconde ou même seulement à 4.77 Mhz (4.7 Millions d'opp à la seconde), c'est une éternité.

Enfin une note d'avertissement : la réplication c'est une source de problèmes à répétitions (perte de données, écrasement de données, pb si une des bases est corrompues, etc ...), donc dans la mesure du possible essaye de concevoir ton architecture pour ne pas en avoir besoin. Même M$ l'a reconnu, le nouveau format 2007 n'est plus répliquable.
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h01.


 
 
 
 
Partenaires

Hébergement Web