Maison > base de données > tutoriel mysql > Comment récupérer le dernier ID d'incrémentation automatique inséré dans MySQL ?

Comment récupérer le dernier ID d'incrémentation automatique inséré dans MySQL ?

DDD
Libérer: 2024-12-09 09:50:07
original
330 Les gens l'ont consulté

How to Retrieve the Last Inserted Auto-Increment ID in MySQL?

Trouver l'équivalent de SCOPE_IDENTITY() de SQL Server dans MySQL

La fonction SQL Server SCOPE_IDENTITY() fournit un moyen de récupérer la dernière identité valeur générée par une instruction INSERT dans la portée actuelle. Son équivalent dans MySQL est LAST_INSERT_ID().

LAST_INSERT_ID()

La fonction LAST_INSERT_ID() renvoie l'ID généré par l'opération INSERT la plus récente qui a inséré une ligne dans une table avec une colonne AUTO_INCREMENT. Sa syntaxe est la suivante :

LAST_INSERT_ID([table_name])
Copier après la connexion

Le paramètre facultatif table_name spécifie la table à partir de laquelle récupérer la dernière valeur d'identité. En cas d'omission, LAST_INSERT_ID() renvoie la valeur de la dernière table dans laquelle une colonne AUTO_INCREMENT a été insérée.

Exemple

Considérez le tableau suivant :

CREATE TABLE Foo (
    FooId INT AUTO_INCREMENT PRIMARY KEY
);
Copier après la connexion

L'insertion d'une ligne dans cette table à l'aide d'une instruction INSERT générera un identifiant pour le nouvel enregistrement. La fonction LAST_INSERT_ID() peut être utilisée pour récupérer cet ID immédiatement après l'opération INSERT, comme indiqué ici :

INSERT INTO Foo () VALUES ();
SELECT LAST_INSERT_ID();
Copier après la connexion

Cela renverra l'ID de l'enregistrement nouvellement créé.

Notes supplémentaires

  • LAST_INSERT_ID() récupère uniquement l'ID de la session en cours. Il ne renvoie pas les identifiants générés dans d'autres sessions.
  • Lors de l'insertion de plusieurs lignes à l'aide d'une seule instruction INSERT dans une transaction, LAST_INSERT_ID() renvoie l'ID de la première ligne qui a été insérée.
  • Si une instruction INSERT ne génère pas de valeur d'identité, LAST_INSERT_ID() renvoie 0.

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!

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal