我在 sqlite 中有一个表,其架构如下:
CREATE TABLE message(ITEM_ID TEXT, COUNTRY_ID TEXT, CODES INTEGER);
即使 CODES 是整数,我仍然可以像这样将字符串数据插入到表中:
insert into message values(124,'5','R')
我期待来自 sqlite 的错误。它不应该返回错误吗?
谢谢,
SQLite 不会以这种方式限制类型。在SQLite的常见问题是这样说的;
SQLite 使用动态类型。它不强制执行数据类型约束。任何类型的数据(通常)都可以插入到任何列中。您可以将任意长度的字符串放入整数列、布尔列中的浮点数或字符列中的日期。您在 CREATE TABLE 命令中分配给列的数据类型不限制可以将哪些数据放入该列。
这与(大多数)其他 SQL 数据库不同,您可能已经注意到,在测试数据库代码时需要格外小心。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句