当在sqlite3中创建表时,当面对所有可能的数据类型,暗示类似的内容时,我会困惑,所以任何人都可以告诉我以下数据类型之间的区别?
INT,INTEGER,SMALLINT,TINYINT DEC,DECIMAL LONGCHAR,LONGVARCHAR DATETIME,SMALLDATETIME
有一些文档在某处列出最小/最大。各种数据类型的容量?例如,我猜smallint拥有比tinyint更大的最大值,但是比整数更小的值,但我不知道这些容量是多少。
sqlite,技术上没有数据类型,在清单打字系统中有
storage classes,是的,如果你习惯了传统的RDBMS,它是混乱。一切,在内部,存储为文本。基于亲和性(分配给列的数据类型),将数据类型强制/转换为各种存储位置。
我建议你做的最好的事情是:
>暂时忘记用于了解独立数据库数据类型的所有内容
>从sqlite站点读取上面的链接。
>根据你的旧模式获取类型,并查看它们在sqlite中映射的类型
>将所有数据迁移到sqlite数据库。
注意:数据类型限制可能很麻烦,特别是如果您在sql中添加持续时间,日期或这种性质的东西。 sqlite对于这种事情只有很少的内置函数。然而,sqlite确实提供了一个简单的方法,你可以通过sqlite3_create_function
库函数来创建自己的内置函数来增加持续时间和性质的东西。您将使用该工具代替传统的存储过程。