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]
Get Using SQLite now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.