RussianLDP Рейтинг@Mail.ru
WebMoney: 
WMZ Z294115950220 
WMR R409981405661 
WME E134003968233 
Visa 
4274 3200 2453 6495 

Small. Fast. Reliable.
Choose any three.

SQLite C Interface

Журнал с упреждающей записью передачи

void *sqlite3_wal_hook(sqlite3*, int(*)(void *,sqlite3*,
                       const char*,int), void*);

sqlite3_wal_hook() используется, чтобы зарегистрировать отзыв, который вызван каждый раз, когда данные пишутся в базу данных в wal-режиме.

Отзыв вызван SQLite после того, как передача произошла и связанная блокировка записи на базе данных снята, таким образом, внедрение может читать, писать или сделать контрольную точку базы данных как требуется.

Первый параметр, переданный функции обратного вызова, когда это вызвано, является копией третьего параметра, переданного sqlite3_wal_hook(), регистрируя отзыв. Второй является копией обработчика базы данных. Третий параметр это название базы данных, которая была написана, "main" или название базы данных из ATTACH. Четвертый параметр это число страниц в настоящее время в файле журнала с упреждающей записью, включая те, которые были просто переданы.

Функция обратного вызова должна обычно возвращать SQLITE_OK. Если код ошибки будет возвращен, та ошибка размножится назад через кодовую базу SQLite, чтобы вызвать запрос, который побудил отзыв сообщать об ошибке, хотя передача все еще произойдет. Если отзыв возвращает SQLITE_ROW или SQLITE_DONE, или если это возвращает значение, которое не соответствует никакому действительному коду ошибки SQLite, результаты не определены.

У одной базы данных может быть самое большее единственный отзыв журнала с упреждающей записью, зарегистрированный когда-то. Вызов sqlite3_wal_hook() заменяет любой ранее зарегистрированный отзыв журнала с упреждающей записью. Возвращаемое значение это копия третьего параметра от предыдущего вызова, если есть, или 0. Обратите внимание на то, что sqlite3_wal_autocheckpoint() и wal_autocheckpoint pragma вызывают sqlite3_wal_hook() и перепишут любой предшествующий sqlite3_wal_hook().