小巧。快速。可靠。
三选其二。

会话模块 C 接口

sqlite3session_object_config 选项

#define SQLITE_SESSION_OBJCONFIG_SIZE  1
#define SQLITE_SESSION_OBJCONFIG_ROWID 2

以下值可以作为 sqlite3session_object_config() 的第二个参数传递。

SQLITE_SESSION_OBJCONFIG_SIZE
此选项用于设置、清除或查询启用 sqlite3session_changeset_size() API 的标志。由于它会带来一些计算开销,因此默认情况下禁用此 API。参数 pArg 必须指向类型为 (int) 的值。如果该值为初始值 0,则禁用 sqlite3session_changeset_size() API。如果它大于 0,则启用相同的 API。或者,如果初始值小于零,则不进行任何更改。在所有情况下,如果在当前调用后启用了 sqlite3session_changeset_size() API,则 (int) 变量设置为 1,否则设置为 0。

在第一个表附加到会话对象后尝试修改此设置将导致错误 (SQLITE_MISUSE)。

SQLITE_SESSION_OBJCONFIG_ROWID
此选项用于设置、清除或查询启用为没有显式主键的表收集数据的标志。

通常,会话模块会简单地忽略没有显式主键的表。但是,如果设置了此标志,则其行为就像在这些表的左侧列中插入了一个“_rowid_ INTEGER PRIMARY KEY”列。

在第一个表附加到会话对象后尝试修改此设置将导致错误 (SQLITE_MISUSE)。

另请参见 对象常量函数 列表。