3

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

例如:

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
4

2 回答 2

2

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

进一步阅读:类型亲和力

于 2013-07-01T20:59:30.090 回答
1

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

于 2013-07-01T20:59:03.910 回答