Python / sqlite - 插入后选择记录

时间:2010-06-09 16:34:12

标签: sqlite

是否有一个等同于INSERT的sqlite ...; SELECT @@ IDENTITY?如果是这样,请告诉我代码或指向我。

谢谢!

2 个答案:

答案 0 :(得分:12)

Cursor.lastrowid

>>> import sqlite3
>>> conn = sqlite3.connect(":memory:")
>>> c = conn.cursor()
>>> c.execute("create table t (id integer, some text);")
<sqlite3.Cursor object at 0x00C64CE0>
>>> c.execute("insert into t values(1,'a');")
<sqlite3.Cursor object at 0x00C64CE0>
>>> c.lastrowid
1

答案 1 :(得分:7)

SELECT last_insert_rowid() -- same as select @@identity

last_insert_rowid() last_insert_rowid()函数返回调用该函数的数据库连接中最后一行插入的ROWID。 last_insert_rowid()SQL函数是sqlite3_last_insert_rowid()C / C ++接口函数的包装器。