在SQLite中,当我说:
CREATE TABLE my_table
(
my_column VARCHAR
);
未指定VARCHAR
的大小,使用的默认大小是多少?
我似乎无法在sqlite.org找到它或从我的数据库文件中找到它。
我知道在尝试将varchar(500)
填入varchar(30)
时,SQLite不会强制执行大小,但在初始大小规范中是否存在权衡以及最佳做法是什么?
答案 0 :(得分:44)
没关系。
在声明VARCHAR
类型时,SQLite不使用大小。实际上,它几乎也不使用该类型。
您可以将TEXT
存储在SQLite的INT
列中。 SQLite将never truncate列为TEXT
列。
答案 1 :(得分:19)
根据我的收集,VARCHAR
与TEXT
答案 2 :(得分:9)
在SQLite中,Text
是VARCHAR
的父级,默认安装中没有http://www.sqlite.org/datatype3.html。