SQLite不保存由零组成的字符串

时间:2013-07-01 20:40:21

标签: sqlite

我正在使用SQLite 3.7.4(在Ubuntu PP下我的c ++应用程序中),当我尝试保存像“000000”这样的字符串时,它只保存一个字符“0”。我也在控制台中试过它 - 是功能还是bug?我怎么能摆脱它?

例如:

CREATE TABLE status (readTime INTEGER, status STRING);
INSERT INTO status (readTime, status) values(1234, "000000");
INSERT INTO status (readTime, status) values(4321, "111111");
SELECT * FROM status;
1234|0
4321|111111

2 个答案:

答案 0 :(得分:2)

一些快速的研究指出STRING不是SQLite中的公认类型(或者,我相信,大多数其他SQL方言)。但是,SQLite对其类型并不严格,因此类型默认为NUMERIC。您应该可以将列类型更改为TEXT以解决您的问题。

进一步阅读:Type Affinity

答案 1 :(得分:1)

“STRING”不是SQLite数据类型。试试“TEXT”。