![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Эти функции возвращают общее количество строк, вставленных, измененных или
удаленных всеми INSERT,
UPDATE или
DELETE с момента, когда
соединение с базой данных было открыто, включая выполненные как часть
триггеров. Две функции идентичны за исключением типа возвращаемого значения
и того что, если количество строк, измененных связью, превышает максимальное
значение, поддержанное типом "int", возвращаемое значение
sqlite3_total_changes() не определено. Выполнение любого другого типа
SQL-оператора не затрагивает значение, возвращенное
sqlite3_total_changes(). Изменения, внесенные как часть
действий внешнего ключа, включены в количество, но сделанные как часть
ограничительной резолюции REPLACE не включены.
Изменения представления, которые перехвачены триггерами
INSTEAD OF, не посчитаны. sqlite3_total_changes(D)
сообщает только о количестве строк, которые изменились из-за SQL-оператора,
которым управляют для соединения с базой данных D. Любые изменения другими
соединениями с базой данных проигнорированы.
Чтобы обнаружить изменения файла базы данных от других соединений с базой
данных используют
PRAGMA data_version или
SQLITE_FCNTL_DATA_VERSION
file control. Если отдельный поток вносит изменения на том же самом соединении с базой
данных, в то время как работает
sqlite3_total_changes(), возвращенное значение
непредсказуемо и не значащее. См. также:
Choose any three.
SQLite C Interface
Общее количество измененных строк
int sqlite3_total_changes(sqlite3*);
sqlite3_int64 sqlite3_total_changes64(sqlite3*);