Maison > base de données > tutoriel mysql > Comment récupérer les identifiants générés automatiquement après une insertion groupée dans MySQL ?

Comment récupérer les identifiants générés automatiquement après une insertion groupée dans MySQL ?

Linda Hamilton
Libérer: 2024-12-06 20:24:15
original
435 Les gens l'ont consulté

How to Retrieve Auto-Generated IDs After a Bulk Insert in MySQL?

Insertion groupée avec identifiants renvoyés dans MySQL

L'insertion de plusieurs lignes dans une table MySQL est une tâche courante. Cependant, si vous devez récupérer les ID nouvellement générés après l'insertion groupée, la fonction standard LAST_INSERT_ID() ne suffira pas.

Solution InnoDB

Si votre table utilise le moteur de stockage InnoDB (un paramètre recommandé pour la plupart des charges de travail), MySQL fournit une solution utilisant les fonctions LAST_INSERT_ID() et ROW_COUNT(). Voici comment cela fonctionne :

Dans InnoDB, les insertions groupées utilisant AUTO INCREMENT garantissent des numéros séquentiels lorsque innodb_autoinc_lock_mode est défini sur 0 (traditionnel) ou 1 (consécutif). Cela signifie que vous pouvez récupérer le premier ID en utilisant LAST_INSERT_ID() et le dernier ID en ajoutant ROW_COUNT() - 1.

Par exemple :

INSERT INTO example_table (name) VALUES ('John'), ('Mary'), ('Bob');

-- Get first ID
SELECT LAST_INSERT_ID() AS first_id;

-- Get row count
SELECT ROW_COUNT() AS row_count;

-- Get last ID
SELECT LAST_INSERT_ID() + ROW_COUNT() - 1 AS last_id;
Copier après la connexion

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