Navigation
API > API/Plugins > API/Plugins/SQLiteCore > API/Plugins/SQLiteCore/sqlite
References
| Module | SQLiteCore |
| Header | /Engine/Plugins/Runtime/Database/SQLiteCore/Source/SQLiteCore/Public/sqlite/sqlite3.h |
| Include | #include "sqlite/sqlite3.h" |
int sqlite3_total_changes
(
sqlite3 *
)
Remarks
CAPI3REF: Total Number Of Rows Modified METHOD: sqlite3
^This function returns the total number of rows inserted, modified or deleted by all [INSERT], [UPDATE] or [DELETE] statements completed since the database connection was opened, including those executed as part of trigger programs. ^Executing any other type of SQL statement does not affect the value returned by sqlite3_total_changes().
^Changes made as part of [foreign key actions] are included in the count, but those made as part of REPLACE constraint resolution are not. ^Changes to a view that are intercepted by INSTEAD OF triggers are not counted.
The [sqlite3_total_changes(D)] interface only reports the number of rows that changed due to SQL statement run against database connection D. Any changes by other database connections are ignored. To detect changes against a database file from other database connections use the [PRAGMA data_version] command or the [SQLITE_FCNTL_DATA_VERSION] [file control].
If a separate thread makes changes on the same database connection while [sqlite3_total_changes()] is running then the value returned is unpredictable and not meaningful.
See also:
- the [sqlite3_changes()] interface
- the [count_changes pragma]
- the [changes() SQL function]
- the [data_version pragma]
- the [SQLITE_FCNTL_DATA_VERSION] [file control]