¿Hay un sqlite equivalente a INSERT ...; SELECT @@ IDENTITY? Si es así, muéstreme el código o apúnteme hacia él.Python/sqlite - seleccionando registros después de insertar
Gracias!
¿Hay un sqlite equivalente a INSERT ...; SELECT @@ IDENTITY? Si es así, muéstreme el código o apúnteme hacia él.Python/sqlite - seleccionando registros después de insertar
Gracias!
>>> 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
SELECT last_insert_rowid() -- same as select @@identity
last_insert_rowid() La función last_insert_rowid() Devuelve el identificador de la última inserción de fila de la conexión de base de datos que invoca la función. La función de SQL last_insert_rowid() es un contenedor de la función de interfaz C/C++ sqlite3_last_insert_rowid().
Gracias! Este ejemplo funcionó perfectamente para lo que necesitaba. No intenté con la otra respuesta, pero supongo que también habría funcionado. – javovo
Tenga cuidado al usar este método si está haciendo muchos cambios dentro de una instancia de cursor antes de llamar a commit(). Es posible que no obtenga los valores que desea. – onetwopunch