2011-01-24 99 views
30

在SQLite的,當我說:SQLite的VARCHAR缺省大小

CREATE TABLE my_table 
(
    my_column VARCHAR 
); 

沒有指定的VARCHAR大小,什麼是所使用的默認大小?

我似乎無法在sqlite.org上找到它,或從我的數據庫文件中找出它。

我知道SQLite在試圖將varchar(500)填充到varchar(30)時不會強制執行大小,但是在初始大小規範中是否存在權衡,以及哪些是最佳實踐?

回答

42

沒關係。

當聲明VARCHAR類型時,SQLite不使用大小。實際上,它幾乎不使用這種類型。

您可以將TEXT存儲在SQLite的INT列中。而SQLite將never truncate一個TEXT列。

+0

哇這是否意味着SQLite列存儲一個指向實際數據的指針呢? – lulalala 2013-02-24 07:11:32