comment dans une table mysql peut on savoir la valeur actuelle de l'auto_increment ?
Pour le moment j'utilise
Code : Tout sélectionner
SELECT MAX(colonne auto_incrementée)Merci
Guy
Code : Tout sélectionner
SELECT MAX(colonne auto_incrementée)
Code : Tout sélectionner
SELECT MAX(colonne auto_incrementée)
Code : Tout sélectionner
INSERT INTO table (chaine) VALUES("coucou");
INSERT INTO table (chaine) VALUES("tout");
INSERT INTO table (chaine) VALUES("le");
INSERT INTO table (chaine) VALUES("monde");
INSERT INTO table (chaine) VALUES("gentil");Code : Tout sélectionner
table (auto_increment, chaine)
1 - coucou
2 - tout
3 - le
4 - monde
5 - gentilCode : Tout sélectionner
DELETE FROM table WHERE auto_increment=3;
DELETE FROM table WHERE auto_increment=5;Code : Tout sélectionner
table (auto_increment, chaine)
1 - coucou
2 - tout
4 - mondeCode : Tout sélectionner
SELECT MAX(auto_increment) FROM table
Strictement à rien.en même temps, connaitre la valeur actuelle de l'auto-increment, ça sert à quoi?![]()
donc le prochain enregistrement aurras comme comme id 6 et pas 5 comme mon code le laissait entendre.Code:
SELECT MAX(auto_increment) FROM table
=> retourne 4, alors que l'auto_increment de la colonne auto_increment=5
c'était une initialisation, j'ai tout scripté en procédures stockées + lots DTS (trucs pour manipuler les données dans les transferts sous SQL Server).Franchement, entre nous, si le transfert doit être fait régulièrement, c'est un problème de conception !!!!
Ensuite, tu peut créer un nouvel id et récupérer l'ancien dans un champ non auto_increment !!!
Mais je pense que ton exemple est ponctuel et que en aucun cas il ne doit être une excuse pour ne pas appliquer ce que j'ai dit plus haut !!!
Et, pour être en train de transferer et d'adapter des données d'une bdd à une autre en ce moment, je peux te dire que rien n'est impossible et que, même avec de gros traitements, tu peut tout remettre à plat