直接脱离SQLite的网站“该值是有符号整数,存储为1,2,3,4,6或8个字节,具体取决于值的大小。”
这是否意味着如果您有1个需要8个字节的值,则该列中的所有值将被视为8个字节。或者,如果其余的都是1个字节,并且一个值是8个字节,那么只有该值使用8个字节而其余值将保持为1吗?
我更习惯使用SQL来相应地指定整数大小。
我知道这个问题似乎微不足道,但基于答案将决定我如何处理数据库。
答案 0 :(得分:3)
sqlite数据库结构在处理数据类型方面有所不同。每个字段可以有不同的类型......
以下是来自sqlite的documentation:
大多数SQL数据库引擎都使用静态类型。数据类型与每列相关联 在表中,只允许存储该特定数据类型的值 柱。 SQLite通过使用清单类型来放宽此限制。在清单打字中, datatype是值本身的属性,而不是值所在的列的属性 存储。因此,SQLite允许用户将任何数据类型的任何值存储到任何列中 无论该列的声明类型如何。 (这条规则有一些例外: INTEGER PRIMARY KEY列只能存储整数。而SQLite试图强迫 值可以在列的声明数据类型中使用。)