-
Clé primaire NumeroAuto
Bonjour à tous,
Je fais actuellement des tests avec une table dont la clé primaire est de type NuméroAuto ; j'ai, par exemple, 1oo enregistrements (1 à 100). J'ouvre la table et j'efface les 10 derniers ; mon dernier enregistrement est donc le 90. Je sauvegarde et je ferme la table.
J'ai un procédure qui me permet d'ajouter de nouveaux enregistrements ; je m'attendais à ce que les nouveaux enregistrements débutent à 91, mais non, ils commencent à 101 et cela même si je ferme ma BD et que je recommence une nouvelle session !
Pourtant, avant d'ajouter des enregistrement, je récupère le dernier numéro d'enregistrement ( DMax("NomChamp", "NomTable") et j'obtiens bien 90 !
Qu'est-ce qui m'échappe ?
Merci de votre aide.
-
Bonjour Jisse55,
C'est le comportement normal. Les numéros une fois attribués sont perdus. Pour retrouver ces numéro il faut compacter la base (valide seulement pour les derniers numéros).
Bonne journée
-
Bonjour.
Le numéro Auto n'est pas un compteur d'enregistrements.
C'est un mécanisme (simple) qui te garanti que tu auras un numéro unique qui n'a pas déjà été attribué.
Si tu as besoin de numéroter tes enregistrements sans "trou", il faut le faire par code ou requête.
Il y a plusieurs posts sur le sujet dans ce forum et il me semble un tutoriel qui couvre cela.
A+