猿问

使用Python插入MySQL数据库后,如何获得“ id”?

我执行INSERT INTO语句


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

我想获取主键。


我的表有2列:


id      primary, auto increment

height  this is the other column.

我刚刚插入了这个,如何获得“ id”?


慕婉清6462132
浏览 2085回答 3
3回答

湖上湖

另外,cursor.lastrowid(MySQLdb支持的dbapi / PEP249扩展名):>>> import MySQLdb>>> connection = MySQLdb.connect(user='root')>>> cursor = connection.cursor()>>> cursor.execute('INSERT INTO sometable VALUES (...)')1L>>> connection.insert_id()3L>>> cursor.lastrowid3L>>> cursor.execute('SELECT last_insert_id()')1L>>> cursor.fetchone()(3L,)>>> cursor.execute('select @@identity')1L>>> cursor.fetchone()(3L,)cursor.lastrowidconnection.insert_id()比另一次MySQL往返便宜,而且便宜很多。

一只萌萌小番薯

Python DBAPI规范还为光标对象定义了“ lastrowid”属性,因此...id = cursor.lastrowid...也应该起作用,并且显然基于每个连接。
随时随地看视频慕课网APP

相关分类

Python
MySQL
我要回答