我是sqlite的新手。我想知道sqlite中varchar数据类型的最大大小限制吗?
任何人都可以向我推荐一些与此相关的信息吗?我在sqlite.org网站上搜索了他们give the answer as:
问。 SQLite中VARCHAR的最大大小是多少?
A。 SQLite不会强制使用VARCHAR的长度。你可以声明一个VARCHAR(10),SQLite很乐意让你把500 其中的人物。并且它将保持所有500个字符完整 - 它 从不截断。
但我想知道sqlite中varchar数据类型的确切最大大小限制。
答案 0 :(得分:33)
来自http://www.sqlite.org/limits.html
字符串或BLOB的最大长度
a中的最大字节数 SQLite中的字符串或BLOB定义为 预处理器宏 SQLITE_MAX_LENGTH。 此宏的默认值为10亿(1千 百万或1,000,000,000)。您可以 提高或降低此值 使用命令行编译时 选项如下:
-DSQLITE_MAX_LENGTH = 123456789目前的实施只会 支持字符串或BLOB长度 231-1或2147483647。还有一些内置的 hex()等函数可能会失败 在那之前。在 它是安全敏感的应用程序 最好不要试图增加 最大字符串和blob长度。在 事实上,你可能会做得更好 最大字符串和blob长度 更多的东西在少数范围内 如果这是可能的话。百万。
在SQLite的部分INSERT和 SELECT处理,完成 数据库中每行的内容是 编码为单个BLOB。所以 SQLITE_MAX_LENGTH参数也是 确定最大字节数 连续。