⌘+k ctrl+k
1.1.3 (stable)
Search Shortcut cmd + k | ctrl + k
CHECKPOINT Statement

CHECKPOINT 语句将预写日志(WAL)中的数据同步到数据库数据文件中。对于内存数据库,此语句将成功执行但不会产生任何效果。

Examples

同步默认数据库中的数据:

CHECKPOINT;

同步指定数据库中的数据:

CHECKPOINT file_db;

中止任何进行中的事务以同步数据:

FORCE CHECKPOINT;

Syntax

检查点操作基于WAL大小自动发生(参见配置)。此语句用于手动检查点操作。

Behavior

默认的CHECKPOINT命令如果有任何正在运行的事务将会失败。包含FORCE将会中止任何事务并执行检查点操作。

另请参阅相关的PRAGMA 选项以进一步修改行为。

Reclaiming Space

在执行检查点(自动或其他方式)时,已删除行占用的空间会被部分回收。请注意,这并不会删除所有已删除的行,而是将具有大量删除的行组合并在一起。在当前实现中,这需要相邻行组中约25%的行被删除。

在内存模式下运行时,检查点没有效果,因此在内存数据库中的删除操作后不会回收空间。

警告 VACUUM 语句 不会 触发删除的清理,因此不会回收空间。