Maison > base de données > tutoriel mysql > Comment puis-je insérer efficacement plusieurs lignes dans MySQL et récupérer tous leurs identifiants ?

Comment puis-je insérer efficacement plusieurs lignes dans MySQL et récupérer tous leurs identifiants ?

Susan Sarandon
Libérer: 2024-12-06 17:43:12
original
340 Les gens l'ont consulté

How Can I Efficiently Insert Multiple Rows into MySQL and Retrieve All Their IDs?

Insérer plusieurs lignes dans MySQL et récupérer leurs identifiants

De nombreux développeurs rencontrent le besoin d'insérer efficacement de nombreuses lignes dans une table MySQL et d'obtenir leurs identifiants correspondants. Alors que classiquement, la récupération du dernier ID inséré est simple à l'aide de LAST_INSERT_ID(), les procédures d'insertion groupée nécessitent une approche révisée.

Solution :

Pour les tables MySQL InnoDB, une solution émerge en utilisant LAST_INSERT_ID() en conjonction avec ROW_COUNT(). Cette stratégie repose sur la capacité inhérente d'InnoDB à maintenir une numérotation séquentielle lors des insertions groupées, à condition que le paramètre innodb_autoinc_lock_mode soit défini sur 0 (traditionnel) ou 1 (consécutif).

Par conséquent, en obtenant le LAST_INSERT_ID(), qui représente le premier ID inséré, et en ajoutant ROW_COUNT() - 1, nous acquérons l'ID final inséré. Cette méthode nous permet d'établir un tableau d'identifiants de manière transparente.

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