Maison > base de données > tutoriel mysql > Comment récupérer les identifiants générés automatiquement après les insertions MySQL ?

Comment récupérer les identifiants générés automatiquement après les insertions MySQL ?

Linda Hamilton
Libérer: 2024-12-09 19:03:14
original
812 Les gens l'ont consulté

How to Retrieve Auto-Generated IDs After MySQL Inserts?

Insérer MySQL avec récupération automatique de l'ID

Lors de l'insertion d'une nouvelle ligne dans une table MySQL, il est souvent nécessaire de récupérer l'identifiant nouvellement attribué ' valeur. Le champ « id » s'incrémente généralement automatiquement, garantissant le caractère unique de chaque ligne. Cependant, cela peut être un problème s'il y a un délai entre l'insertion de la ligne et la récupération de « l'identifiant ».

Une méthode pour atténuer ce problème consiste à utiliser l'instruction INSERT ... SELECT de MySQL. Cette instruction vous permet d'insérer une ligne à partir d'une requête SELECT, en obtenant la valeur 'id' en une seule transaction.

$link = mysqli_connect('127.0.0.1', 'my_user', 'my_pass', 'my_db');
mysqli_query($link, "INSERT INTO mytable SELECT 1, 2, 3, 'blah' FROM DUAL");
$id = mysqli_insert_id($link);
Copier après la connexion

Dans cet exemple, l'instruction INSERT ... SELECT insère une ligne dans la mytable avec les données spécifiées, tandis que la fonction mysqli_insert_id() récupère la valeur 'id' de la ligne nouvellement insérée.

Une autre approche consiste à utiliser la méthode MySQL Fonction LAST_INSERT_ID(). Cette fonction renvoie la valeur 'id' de la dernière ligne insérée pour la connexion actuelle. Cependant, il est important de noter que la valeur LAST_INSERT_ID() est spécifique à la connexion, il est donc essentiel de l'utiliser dans la même connexion qui a effectué l'opération INSERT.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal