Recuperer l'id auto_increment avant l'insertion
Bonjour @ tous,
Voilà j'aimerais récuperer en fait le prochain id de ma table lorsque je ferais une insertion. J'ai un champ id auto_increment, et donc je voudrasi savoir sa valeur au prochain enregistrement, comment faire ?
Je connais mysql_insert_id() mais c'est pour le connaitre après. J'ai essayer mysql_insert_id()+1 mais ca me donne pas la bon :(
Merci d'avance
le 16/09/2004 à 17:02
i M@N
Hello !
Récupérer le numéro correspondant à la dernière insertion.
Cela doit se faire immédiatement après une insertion.
On utilise alors la fonction LAST_INSERT_ID() qui contient le numéro de l'enregistrement précédent.
UPDATE Chant SET CHANT_NOM="le titre du chant" WHERE Chant.CHANT_ID=LAST_INSERT_ID();
Cela permet d'établir des liens entre les tables.
Dans l'exemple précédent, on utilise le numéro affecté à la dernière insertion effectuée dans la table chant pour y placer le nom du chant en question.
source :
http://www.infres.enst.fr/~danzart/mysql/SQL.phtml
Je sais pas si ça fonctionne parce que j'ai pas testé, essaye toujours et continue les recherche sur cette fonction sur google.
@+...
One Love, One Heart, One Unity.
mysql_inert_id() c'est pour recupere l'id qui vient d'etre inserer ..
Pour connaitre la suivant ptet SELECT MAX(id) FROM `table` et tu rajoute 1.
Apres je vois pas pourquoi tas besoin de savoir l'id qui va etre inserer .. m'enfin ca hein
zebdinou pour les intimes / Blog : http://www.zebden.fr
Non mais le MAX est ce qu'il va prendre enc ompte le fait que si je supprime l'id 6 il va pas me prendre l'id 5 au lieu du 6 ?
En fait l'id correspond à l'id de l'article et donc lors du formulaire d'ajout ben c'est juste pour savoir quel sera l'id suivant.. :-\
Question toute bete comme ca :
quand tu insert tu précise l'id ? c'est pour ca que tu veux l'id suivante ? dans ce cas tu ne précise rien du tout et Mysql le fait pour toi .
zebdinou pour les intimes / Blog : http://www.zebden.fr
Non pas du tout, ce que je fais c'est que avant d'insérer je veux pouvoir montrer sous quel id l'article sera enregistré....
le 17/09/2004 à 14:37
plc2k
je vais ptet dir une betise, mais faire une petite requete avant pour voir quel est le dernier id ... ça te va pas ???
genre :
select id from table order by id DESC Limit 1
a++
le 17/09/2004 à 14:37
plc2k
of course tu fais +1 à la variable recupérée pour avoir le suivant
Oui mais si je suis au 6, et je ne veux plus de l'article, je supprime l'id 6 et donc l'id récupéré sera le 6 (5+1) alors que ca devrait etre le 7
C'est drole j'aurais pensé qu'une fonction existerait pour cela...
Bin je vais etre franc ca n'as vraiment aucun interet de savoir l'id suivante , l'id si tu veux c'est plus pour s'en servir de clé pour des jointures etc etc ...
Apres la terre va s'arreter de tourner si tu dis pas :
" L'id du prochain article sera pouet" ?? donc voila , a moins que j'ai mal saisie son interet pour toi .
zebdinou pour les intimes / Blog : http://www.zebden.fr