Configurar un auto-checkpoint
int sqlite3_wal_autocheckpoint(sqlite3 *db, int N);
La llamada sqlite3_wal_autocheckpoint(D,N) es una envoltura alrededor de sqlite3_wal_hook() que hace que cualquier base de datos en la conexión de base de datos D coloque automáticamente un punto de control (checkpoint) después de completar una transacción si hay N o más marcos en el fichero de diario de escritura anticipada. Pasar cero o un valor negativo como parámetro nFrame desactiva los puntos de control automáticos por completo.
La retrollamada registrada por esta función reemplza a cualquier retrollamada existente registrada usando sqlite3_wal_hook(). Del mismo modo, registrar una retrollamada usando sqlite3_wal_hook() desactiva el mecanismo de punto de control automático configurado con esta función.
El pragma wal_autocheckpoint puede ser usado para invocar esta función desde SQL.
Todas las nuevas conexiones de base de datos tienen por defecto el auto-checkpoint activo con un umbral de 1000 o SQLITE_DEFAULT_WAL_AUTOCHECKPOINT páginas. El uso de esta función sólo es necesario si se detecta que la asignación por defecto no es óptima para una aplicación en particular.