equids Posté 3 Décembre 2008 Partager Posté 3 Décembre 2008 Bonjour tout le monde, je voudrais savoir si il y a une possibilité, après avoir effectué un insert de ligne dans une base MySql, de réccupérer l'identifiant de la ligne insérée. J'ai un champs "numero", qui s'auto-incrémente, et lorsque j'insère un enregistrement, je voudrais savoir si il y a une possibilité de connaître ce numéro, sans forcément devoir faire une requête sur la table ? Merci Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 3 Décembre 2008 Partager Posté 3 Décembre 2008 Il te suffit d'utiliser la fonction mysql_insert_id(), elle est là pour ça Lien vers le commentaire Partager sur d’autres sites More sharing options...
TheRec Posté 3 Décembre 2008 Partager Posté 3 Décembre 2008 Bonjour, Et si tu veux faire cela directement dans une requête SQL (étant donné la section où tu as posté ton message) tu peux utiliser la fonction LAST_INSERT_ID. Il faut juste faire attention à cela : Si vous insérez plusieurs lignes au même moment avec une requête INSERT, LAST_INSERT_ID() retourne la valeur de la première ligne insérée. La raison à cela est que cela rend possible la reproduction facilement la même requête INSERT sur d'autres serveurs.Source: Documentation MySQL 5.0 Lien vers le commentaire Partager sur d’autres sites More sharing options...
equids Posté 3 Décembre 2008 Auteur Partager Posté 3 Décembre 2008 Il te suffit d'utiliser la fonction mysql_insert_id(), elle est là pour ça Tu l'utilises comment cette fonction ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
TheRec Posté 3 Décembre 2008 Partager Posté 3 Décembre 2008 As-tu suivi le lien que t'as proposé captain_torche ? La page contient un exemple de code PHP pour l'utilisation de cette fonction. Lien vers le commentaire Partager sur d’autres sites More sharing options...
equids Posté 3 Décembre 2008 Auteur Partager Posté 3 Décembre 2008 Oui, mais l'exemple proposé ne montre pas comment utiliser l'intérieur des perenthèses de la fonction. Et j'ai une question concernant cette fonction : Si pendant le lapse de temps qui sépare l'INSERT dans la table, et le résultat de la fonction, il y a un nouvel enregistrement qui est inséré, est ce que la fonction retournera le premier INSERT ? ou est ce qu'elle retournera celle du dernier INSERT, qui n'est donc aps le numéro qu'on veut ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Kioob Posté 3 Décembre 2008 Partager Posté 3 Décembre 2008 Bah le "link_identifier" c'est le même que pour toutes les autres fonctions de l'extension MySQL, il s'agit de l'identifiant retourné par la fonction mysql_connect(). Sinon le last_insert_id(), comme son nom l'indique retourne l'identifiant du dernier insert (de la connexion courante). Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant