Maison >base de données >tutoriel mysql >Comment récupérer des identifiants à incrémentation automatique après une INSERT dans MySQL à l'aide de Python ?

Comment récupérer des identifiants à incrémentation automatique après une INSERT dans MySQL à l'aide de Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-03 20:37:10758parcourir

How to Retrieve Auto-Increment IDs After an INSERT in MySQL using Python?

Obtention d'un ID à incrémentation automatique après un INSERT avec Python et MySQL

Lors de l'exécution d'une opération INSERT INTO dans une base de données MySQL à l'aide de Python, il est souvent nécessaire de récupérer l'ID clé primaire de la ligne nouvellement insérée. Dans ce cas, la table a une colonne id auto-incrémentée comme clé primaire.

Pour obtenir l'ID après une insertion, deux méthodes principales sont disponibles en utilisant Python :

cursor.lastrowid

L'attribut curseur.lastrowid contient l'ID de la dernière ligne insérée à l'aide du curseur. Après avoir exécuté l'instruction INSERT :

cursor.execute("INSERT INTO mytable(height) VALUES(%s)", (height))

L'identifiant de la ligne nouvellement insérée est accessible comme suit :

last_inserted_id = cursor.lastrowid

connection.insert_id()

Alternativement, la méthode connection.insert_id() peut être utilisée pour obtenir l'ID de la dernière ligne insérée sur la connexion. Cette méthode est généralement utilisée conjointement avec une instruction INSERT distincte exécutée en dehors du contexte du curseur :

connection.execute("INSERT INTO mytable(height) VALUES(%s)", (height))
last_inserted_id = connection.insert_id()

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:
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