Name
sqlite3_update_hook() — Register an update callback
Definition
void* sqlite3_update_hook( sqlite3* db, update_callback, void* udp ); void update_callback( void* udp, int type, const char* db_name, const char* tbl_name, sqlite3_int64 rowid );
-
db
A database connection.
-
update_callback
An application-defined callback function that is called when a database row is modified.
-
udp
An application-defined user-data pointer. This value is made available to the update callback.
-
type
The type of database update. Possible values are
SQLITE_INSERT
,SQLITE_UPDATE
, andSQLITE_DELETE
.-
db_name
The logical name of the database that is being modified. Names include
main
,temp
, or any name passed toATTACH DATABASE
.-
tbl_name
The name of the table that is being modified.
-
rowid
The
ROWID
of the row being modified. In the case of anUPDATE
, this is theROWID
value after the modification has taken place.- Returns (
sqlite3_update_hook()
) The previous user-data pointer, if applicable.
Description
This function allows an application to register an update
callback. This callback is called when a database row is
modified. The callback must not use the associated database
connection to modify any databases, nor may it call sqlite3_prepare_v2()
or sqlite3_step()
.
The callback will be called when rows are modified by a trigger,
but not when they are deleted because of a conflict resolution
(such as INSERT OR REPLACE
).
The callback is not called when system tables (such as sqlite_master
) are
modified.
See Also
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.