php mysql_insert_id ()

  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Juin 17th, 2010, 6:57 am

Ive été utilisant mysql_insert_id () pour quelques années pour obtenir la clé d'auto-incrémentation de ma dernière requête. Je suppose que j'ai deux questions.
Code: [ Select ]

$sql = "INSERT INTO blah blah blah";
$run = mysql_query($sql);
$autokey = mysql_insert_id();
  1. $sql = "INSERT INTO blah blah blah";
  2. $run = mysql_query($sql);
  3. $autokey = mysql_insert_id();



Est-il toujours obtenir la dernière requête exécutée descendre la page? Php est lu de haut en bas à droite? Mais je pensais qu'il y avait des cas qui ont été différents.

Puis-je la chaîne de requêtes?

Code: [ Select ]

$sql = "INSERT INTO blah blah blah";
$run = mysql_query($sql);
$autokey = mysql_insert_id();

$sql2 = "INSERT INTO blah blah blah";
$run2 = mysql_query($sql2);
$autokey2 = mysql_insert_id();
  1. $sql = "INSERT INTO blah blah blah";
  2. $run = mysql_query($sql);
  3. $autokey = mysql_insert_id();
  4. $sql2 = "INSERT INTO blah blah blah";
  5. $run2 = mysql_query($sql2);
  6. $autokey2 = mysql_insert_id();




Je suppose que Im juste concernés par la stabilité de récupérer cette clé. En outre, si j'ai beaucoup de personnes l'accès au fichier à un moment il sera l'effet de l'appel, par exemple, si un grand nombre de données est écrite à la db dans une courte période?
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Juin 17th, 2010, 6:57 am

  • SpooF
  • ٩๏̯͡๏۶
  • Bronze Member
  • Avatar de l’utilisateur
  • Inscription: Mai 22, 2004
  • Messages: 3415
  • Loc: Richland, WA
  • Status: Offline

Message Juin 17th, 2010, 7:20 am

PHP va droit vers le bas de la page sauf si vous modifiez le flux avec une boucle en quelque sorte.

Quant à la mysql_insert_id ()

Quote:
Paramètres

link_identifier
La connexion MySQL. Si l'identifiant de connexion n'est pas spécifié, la dernière connexion ouverte avec la fonction mysql_connect () sera utilisée. Si une telle connexion est trouvée, elle va tenter de créer un comme si la fonction mysql_connect () a été appelée sans argument. Si aucune connexion n'est trouvée ou établie, une alerte E_WARNING est générée.


mysql_insert_id () ne retourne que l'ID de la dernière insertion / mise à jour de requête que vous avez exécuté avec votre connexion MySQL (lien). Chaque fois que vous appelez mysql_connect () un nouveau lien est fait à la base de données.
#define NULL (::rand() % 2)
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Juin 17th, 2010, 8:16 am

Grande, qui a déblayé le flux et d'être que le paramètre est le lien fondées donc pas deux liens différents peuvent obtenir le même ID dernière et qui efface le problème de stabilité qui Im préoccupe.

Afficher de l'information

  • Total des messages de ce sujet: 3 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 145 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC