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

标签 sqlite

我正在使用 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

最佳答案

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

进一步阅读:Type Affinity

关于SQLite 不保存由零组成的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17413296/

相关文章:

json - JSON extract\set 的 SQLite JSON1 示例

python - 根据表中的现有属性在 Python 中填充 SQL 表

java - Sqlite + Android 行结果中的空列

android - 如何使用 sqlite 获取一个月的数据?如果没有特定日期的数据,那么我想要零代替那个

node.js - 我收到 SQLITE_Error : no such column, 但它存在为什么?

android - 有人发现 SQLITE 'delete' 性能问题吗?

ruby-on-rails - 如何在 Mac 上更新 SQLite?

SQLite/DB 浏览器中的 SQL 查询不返回任何值

Android: 列 '_id' 不存在

java - 代号一日历 UpdateButtonDayDate() 问题