Name
last_insert_rowid() — Return the ROWID of the last inserted row
Common Usage
last_insert_rowid( )
Description
The last_insert_rowid() function returns the
integer ROWID value (or
ROWID alias) of the
last successfully completed row INSERT. The purpose of this function is to
discover an automatically generated ROWID, often for the purpose of inserting a
foreign key that references that ROWID. For the purposes of this function, an
INSERT is considered to
successfully complete even if it happens inside an uncommitted
transaction.
The returned value is tracked by the
database connection, not the database itself. This avoids any
possible race conditions between INSERT operations done from different database
connections. It means, however, that the
returned value is updated by an INSERT to any table of any attached database in
the database connection. If no INSERT operations have completed with this
database connection, the value 0 is returned.
This SQL function is a wrapper around
the C function sqlite3_last_insert_rowid(), and has all of the
same limitations and conditions.
See Also
changes(), total_changes(), sqlite3_last_insert_rowid() [C API, Ap G]
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access