Retouner l'id de la dernier engregistrement

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Retouner l'id de la dernier engregistrement

par zeus » 16 avr. 2008, 19:41

Il n'y a pas de simultanéité en informatique. Les requêtes sont toujours exécutés les unes après les autres.

Les choses se compliquent quand tu veux exécuter 2 requêtes sans qu'aucune requête ne s'exécute entre les 2, et là, le LOCK est utile.
Pour le LAST_INSERT_ID, comme il est retourné par la requête INSERT, donc dans la même requête, il n'est pas nécessaire de ce soucier de la simultanéité ;)

par caroube » 16 avr. 2008, 18:36

est ce que cette fontion sera util dans le cas ou plusieurs personnes ont enregistrer leurs donnée au meme temps
Sauf si tu n'as pas de bol, il n'y aura jamais plusieurs personnes qui enregistreront leurs données exactement en même temps. Il y aura toujours un décalage de quelques millisecondes entre ellles.

Sinon, il n'y a pas de problème puisque lorsqu'un ordre fait un autoincrément, MySQL bloque la table, fait son INSERT et débloque la table. Donc même si un autre utilisateur fait une action pile pendant ce blocage (qui ne dure que quelques millisecondes), MySQL le mettra en file d'attente avant de fournir un autre numéro.

Enfin, si tu veux vraiment t'assurer qu'il n'y aura aucun problème, tu peux toujours envoyer un ordre LOCK à la table avant l'insertion, puis un ordre UNLOCK.

Retouner l'id de la dernier engregistrement

par Binarios » 16 avr. 2008, 18:18

Bonjour tout le monde
je travalle sur un projet avec une base de donnée, je utilise mysql_insert_id() pour retourner l'id de la l'enregistreemnt enregistré dans la base,
mais je connu pas bien la fontion de cette fontion,
est ce que cette fontion sera util dans le cas ou plusieurs personnes ont enregistrer leurs donnée au meme temps
et merci