1
我使用SQLite Manager附加,我无法找出 这些数据类型之间的区别:的SQLite Manager数据类型
1)文本与文本(严格)
2) REAL与REAL(严格)
3)INTEGER与INTEGER(严格)
我使用SQLite Manager附加,我无法找出 这些数据类型之间的区别:的SQLite Manager数据类型
1)文本与文本(严格)
2) REAL与REAL(严格)
3)INTEGER与INTEGER(严格)
SQLite的使用dynamic typing,这意味着它可以插入任何类型的值,而不管声明的列类型。
当您选择“strict”类型时,SQLite Manager将创建一个额外的CHECK约束来强制执行数据类型;是这样的:
CREATE TABLE test (
WithoutStrict INTEGER,
WithStrict INTEGER CHECK (typeof(WithStrict) = 'integer')
);
(这是不记录任何地方)
这是非常有用的信息,谢谢。但我并不真正了解,何时会有人声明列类型,知道它不是严格的?我的意思是当我们声明一个列类型时,它必须是严格的,对吧? –
动态打字是一项功能。如果你真的想使用它,你不需要检查。此外,SQLite管理器添加的检查防止NULL值。 –