首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何处理大数

如何处理大数
EN

Stack Overflow用户
提问于 2016-10-13 23:18:38
回答 1查看 1.8K关注 0票数 1

我正在尝试将长整型存储在表中。我的表模式如下所示。

代码语言:javascript
复制
CREATE TABLE t7(a long integer);

我插入了下面的值。

代码语言:javascript
复制
insert into t7(a) values(16732595907054788167);

但是当我选择的时候,我得到的数值如下

代码语言:javascript
复制
select * from t7;

1.67325959070548e+19

我不想使用字符串或blob作为数据类型。如何在选择时将数字转换为长整型。

EN

回答 1

Stack Overflow用户

发布于 2016-10-13 23:47:24

SQLite使用带符号的64位整数,因此最大可能的整数值是9223372036854775807。

它使用dynamic typing,所以你不能做任何事情来获得更大的整数:

代码语言:javascript
复制
CREATE TABLE test(
    Col1 LONG INTEGER,
    Col2 UNSIGNED LONG INTEGER,
    Col3 EXTREMELY HUGE LONG LONG LONG INTEGER EXTENDED ENTERPRISE EDITION,
    Col4 EH WHATEVER
);
INSERT INTO test VALUES (9223372036854775807,9223372036854775807,9223372036854775807,9223372036854775807);
INSERT INTO test VALUES (9223372036854775808,9223372036854775808,9223372036854775808,9223372036854775808);

SELECT * FROM test; 
9223372036854775807  9223372036854775807  9223372036854775807  9223372036854775807
9.22337203685478e+18 9.22337203685478e+18 9.22337203685478e+18 9.22337203685478e+18

您必须使用字符串或blobs。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40024942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档