我正在做一些基本的sqlite。我有一个名为A. 2元组的关系,名为C,D。元组接受整数值。但是当我尝试插入字符串值时,sqlite仍然接受它们
表示exp:
插入A值('1','2');
上面的sql语句执行成功。那么sqlite会自动将'string'类型的值转换为整数值吗?换句话说,sqlite不会检查元组的约束
答案 0 :(得分:2)
SQLite使用dynamic typing;它会接受任何类型的值。
如果您确实希望数据库检查类型,请添加CHECK约束:
CREATE TABLE A(
C INTEGER CHECK(typeof(C) = 'integer'),
D INTEGER CHECK(typeof(D) = 'integer')
);