Bonjour,
Y-a-t'il une solution qu'on peut envisager pour résoudre le problème de sauts de compteurs avec l'utilisation des séquences?
Version imprimable
Bonjour,
Y-a-t'il une solution qu'on peut envisager pour résoudre le problème de sauts de compteurs avec l'utilisation des séquences?
Une séquence n'est pas qu'un compteur. Une séquence permet de générer un identifiant unique.
Si deux utilisateurs interrogent simultanément une séquence pour connaître la prochaine valeur, ils ne recevront pas la même valeur.
Qu'il y ait des "trous" dans la suite de valeurs de l'identifiant d'une table associé une séquence n'est pas un problème.
Si vous avez besoin d'un compteur, il faut passer par un autre mécanisme.
Salut,
Non.
Pour une réponse plus précise, il faudra une description plus précise :)
(SGBD, instructions utilisées, cas d'utilisation, ...)
D'accord, plus précisément, lors de l'alimentation d'une clé primaire, si un
enregistrement a été inséré puis la transaction a été annulée par un « ROLLBACK », alors la séquence ne revient pas en arrière, et lors de l’insertion suivante, une nouvelle valeur est générée ==> on aura donc des trous,
Ya t'il une solution pour ne pas avoir ces trous ?
Non, aucune solution.
Après, il faut savoir pourquoi tu ne veux pas de trou... et à ce moment là on peut éventuellement te générer des compteurs à la volée.
Mais une séquence, ça n'a vraiment que vocation à être un identifiant unique, dont l'allocation est déléguée au système.
Ca ne doit ni te servir comme donnée temporelle, ni te poser de problèmes quand il y a des trous. (et comme dit, c'est inévitable)
Merci.