限制sqlite3中的浮点值

限制sqlite3中的浮点值,sqlite,integer,Sqlite,Integer,我在使用sqlite3时遇到了一个奇怪的问题。 例如,我有下表 CREATE TABLE demo (effort integer); insert into demo values (10.5); - works fine insert into demo values (10.5); - works fine insert into demo values (10.5555); - works fine 我有两个顾虑: 1.当我将数据类型声明为integer not real时,

我在使用sqlite3时遇到了一个奇怪的问题。 例如,我有下表

CREATE TABLE demo (effort integer);


insert into demo values (10.5);  - works fine
insert into demo values (10.5);  - works fine
insert into demo values (10.5555);  - works fine
我有两个顾虑:

1.当我将数据类型声明为integer not real时,为什么允许浮点值? 2.有没有办法把它限制在小数点后两位

是否有任何变通办法,以便我只能限制整数值(严格来说,没有浮点值)

请推荐。

SQLite

要强制使用列类型,请添加约束:

创建表演示(
工作量整数非空检查(typeof(工作量)=“整数”)
)
SQLite

要强制使用列类型,请添加约束:

创建表演示(
工作量整数非空检查(typeof(工作量)=“整数”)
)