salut,
Je voulais juste te préciser comment fonctionne l'autoindentation dans la plupart des bdd. En fait le serveur cherche le maximun de l'id dans la table et il ajoute 1.
D'ou quand tu supprime l'enregistrement 2, c'est normal que lors d'un insert l'id soit 6, il est tout aussi normal que lorsque tu efface ta table en entier l'id soit 1 ( ou 0 ).
Pour faire ce que tu veux je vois que deux solutions, soit tu crées un trigger qui cherche le premier id non utilisé, cependant cela implique d'écrire une fonction récursive qui test tout les id jusqu'il y en est un de libre, et donc cela va prendre bcp de temps sur une grande table, soit tu créer une table ( id_free ) où tu y mets les id des enregistrements que tu supprimes, et donc lorsque tu feras un insert tu iras voir dans cette table si elle n'est pas vide avant de créer un nouvel id.
En espérant que j'ai été clair.
Bonne continuation.
PS : pourquoi veux tu qu'il n'y est pas de "trou", pour moi c'est faire simple quand on peut faire compliqué et de plus tu auras des problèmes avec les orphelins.
N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!