Comment faites-vous en toute sécurité et efficacement obtenir l'id de ligne après un insert avec mysql à l'aide de MySQLdb en python?

J'ai une simple table dans mysql avec les champs suivants:

  • id -- Primary key, int, autoincrement
  • nom varchar(50)
  • description -- varchar(256)

À l'aide de MySQLdb, un module python, je veux insérer un nom et une description dans la table, et de récupérer l'id.

En pseudo-code:

db = MySQLdb.connection(...)
queryString = "INSERT into tablename (name, description) VALUES" % (a_name, a_desc);"

db.execute(queryString);
newID = ???
Double de Comment puis-je obtenir de l'IDENTITÉ / la numérotation automatique de la valeur pour la ligne je l'ai inséré dans pymysql, qui est une meilleure Q&Une paire; celui-ci a une mauvaise réponse acceptée avec la bonne réponse, édité en dessous, ce qui est étrange et inutile.

OriginalL'auteur grieve | 2009-04-01