我试图使 SQLite 表尽可能小。我的表将只包含 1 个字节的无符号整数。但是,不清楚当我创建一个新表时,创建的表的底层结构是什么。例如:
CREATE TABLE test (SmallNumbers INTEGER)
Run Code Online (Sandbox Code Playgroud)
结果 SmallNumbers 字段的大小是否为 1、2、4...8 个字节?
如果我使用上述命令创建 100 万条包含数字“1”的记录来创建表,那么生成的 .db 文件是否会比插入 100 万条全部包含 412,321,294,967,295 值的记录小?
我如何确保这样的表尽可能小,因为我将 1 个字节的无符号整数插入表中(关于磁盘空间)?
每个 SQLite 文档:https : //www.sqlite.org/datatype3.html
存储在 SQLite 数据库中(或由数据库引擎操作)的每个值都具有以下存储类之一:
整数。该值是一个有符号整数,根据值的大小存储在 1、2、3、4、6 或 8 个字节中。
您无需执行任何操作即可确保表尽可能小。SQLite 将逐个值地选择可以存储您提供的值的最小存储类。