SQLite中的长十进制数

时间:2017-02-17 10:01:17

标签: sql sqlite

需要在SQLite数据库中存储长十进制数。 12个符号 - 整数部分和8 - 十进制,如同 - '123456789012,12345678'(仅限正数)

drop table if exists table1;

CREATE TABLE table1 (
 a INTEGER,
 b DECIMAL(20,8)
); 

INSERT INTO table1 select 1, 123456789012.12345678;

select * from table1;

查询结果:

RecNo a                     b 
----- - --------------------- 
    1 1 123456789012.12345900 

正如我们所看到的,它是对小数部分中的最后几位进行四舍五入。如何在没有舍入的情况下获得准确的结果?

1 个答案:

答案 0 :(得分:2)

SQLite存储numeric(十进制)数据类型up to 8 bytes。但这还不足以存储您的号码,包括小数位。

您可以使用blob来存储它或text