Les Allergies
Alimentaires
Posez votre question Signaler

[MySql] id du dernier enregistrement [Résolu]

Iger 346Messages postés 5 juin 2004Date d'inscription - Dernière réponse le 16 janv. 2012 à 16:57
Bonjour,
J'ai une table où la clé primaire est un champ "Id", entier en auto-increment.
Je voudrais savoir comment connaître, quand j'ajoute un enregistrement, la valeur de ce champ pour cet enregistrement que je viens d'ajouter.
ie, quelle est la commande pour avoir le dernier enregistrement d'une table
Merci.
Lire la suite 

[MySql] id du dernier enregistrement »

17 réponses
Réponse
+28
moins plus
Essaye plutot la fonction Mysql suivante: last_insert_id()
SELECT LAST_INSERT_ID() FROM table

(regarde quand même la doc pour être sur)
Hicham - 1 avril 2011 à 00:36
mysql_query("insert into table values(*******)");
$dernier_id = mysql_insert_id ();
Ajouter un commentaire
Réponse
+7
moins plus
Salut,

Je ne connais pas MySQL, mais essaye simplement :
SELECT max(Id) FROM table
-= Fu Xuen =-
jason - 23 sept. 2011 à 15:14
Salut . tu n'y connais peut etre rien mais tu es vraiment de tres bon conseil, ca marche. merci
mehdi - 6 oct. 2011 à 01:40
merci ça marche bien
still - 16 janv. 2012 à 16:57
Conerie, si tu supprime un champs, l'id peut être réutilisé en cas de table lourde. Autrement dit, un max(Id) ne te donnera pas toujours la bonne valeur
Ajouter un commentaire
Réponse
+1
moins plus
Merci merci!!!
:-)))
Ajouter un commentaire
Réponse
+1
moins plus
Bonjour ca va?? j'espere que oui ^_^

J'ai un probleme que j'arrive pa à résoudre SVPPPPPPPPPPP aider moi

Voila le probléme: j'ai une table dans ma base de donnée qui s'appelle reference, cette table contient 3 champs:
Code_Ref: c'est une clé primaire de type int.
Nom_Fam: de type varchar.
Num_Ref : de type int.
dans ma page web j'ai 3 formulaires avec un bouton ajouter pour ajouter un nouveau reference, mai le probleme c'est quand je clique sur valider seulement les champs Nom_Fam et Num_Ref qui s'ajoutent au base de donnée et le champs de clé primaire toujours reste égale à zero.

voila mon code enregistrer_reference.php:
<?php


//on commence par les champs

if(isset($_POST['Code_Ref']))

$Code_Ref=addslashes($_POST['Code_Ref']);

else

$Code_Ref="";

if(isset($_POST['Nom_Fam']))

$Nom_Fam=addslashes($_POST['Nom_Fam']);

else

$Nom_Fam="";



if(isset($_POST['Num_Ref']))

$Num_Ref=addslashes($_POST['Num_Ref']);

else

$Num_Ref="";

// on écrit la requête sql
$sql = "INSERT INTO reference (Code_Ref, Nom_Fam, Num_Ref) VALUES('$Code_Ref','$Nom_Fam','$Num_Ref')";
$a=mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());



mysql_close(); // on ferme la connexion



?>
Merci d'avance
meryama - 1 avril 2011 à 10:50
merciiiiiiii beaucoup de votre répense j'ai désactivé la propriété Auto-incrémente.
bonne journé ^-^
healou - 12 avril 2011 à 01:43
faut pas tjs regarder loin ^^, le 3/' des erreur sont tjs des fautes d'inatentions :)
meryama - 14 avril 2011 à 09:40
hhh oui c vrai :D
Ajouter un commentaire
Réponse
+0
moins plus
et comment fais-tu si un autre user fait un insert entre temps ? ^^
charli0123 - 8 févr. 2008 à 11:00
Bonjour,

Pour compléter cette discussion le : LAST_INSERT_ID() récupère le dernier enregistrmenet inséré par le traitement en cours . Donc , même si quelqu'un fait un insert entre temps ....... la valeur de l'id retournée sera la bonne.

Cordialement
Ajouter un commentaire
Réponse
+0
moins plus
Et si il s'agit d'insertion multiple? LAST_INSERT_ID() selectionnera toujours le dernier inséré? Parce que le résultat de ma requête est multiple.

SELECT LAST_INSERT_ID(IM_ID) AS cpt FROM images

Merci
Ajouter un commentaire
Réponse
+0
moins plus
il devrait donner l id du dernier enregistrement en fonction de l'ordre des enregistrements ^^
Ajouter un commentaire
Ce document intitulé « [MySql] id du dernier enregistrement » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?