亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SQLite 中文指南之FAQ第5/6頁

 更新時間:2008年09月12日 18:09:17   作者:  
sqllite使用過程中碰到的一些問題解決,中文版

SELECT name FROM
(SELECT * FROM sqlite_master UNION ALL
SELECT * FROM sqlite_temp_master)
WHERE type='table'
ORDER BY name

(10) SQLite數(shù)據(jù)庫是否有已知的大小限制?

數(shù)據(jù)庫大小被限制在 2TB(241 bytes). 這是理論限制。事實上,你應(yīng)該把 SQLite數(shù)據(jù)庫的大小限制在100GB以下,以免出現(xiàn)運行性能上的問題。如果你需要儲存100GB或更多數(shù)據(jù)在一個數(shù)據(jù)庫中, 考慮使用為此而設(shè)計的企業(yè)版數(shù)據(jù)庫吧。

一個數(shù)據(jù)庫的理論行數(shù)限制是 264-1,顯然你會在達(dá)到行數(shù)限制之前先超過文件大小的限制。目前一行可以存放 230 bytes 數(shù)據(jù)。而基本的文件格式可以支持行大小到約 262 bytes.

可能還會有對于表、索引的數(shù)目或表和索引中的字段數(shù)的限制,但沒人知道是多少。事實上,每當(dāng)新數(shù)據(jù)庫打開時,SQLite需要讀取和 分析所有表和索引聲明的初始SQL,所以,為了調(diào)用 sqlite3_open() 時獲得最佳性能,最好減少聲明的表的數(shù)目。同樣的,即使 對于表中字段數(shù)沒有限制,多于100個也顯得太多了。 只有表開頭的31個字段會得到優(yōu)化。你可以在一個索引中放入任意多的字段但超過30字段的索引將不用于優(yōu)化查詢。

表,索引,視圖,觸發(fā)器和字段名稱可以任意長,但SQL 函數(shù)名 (由 sqlite3_create_function() API創(chuàng)建的)不得超過255個字符。

(11) 在 SQLite 中 VARCHAR 的最大長度是多少?

SQLite不強制VARCHAR的長度。你可以聲明一個VARCHAR(10),SQLite一樣可以讓你存放500個字符在里面。 并且它們會始終完整無缺——決不會被截斷。

(12) SQLite 是否支持 BLOB 類型?

SQLite 3.0 版支持在任何字段存放 BLOB 數(shù)據(jù),不管字段聲明為什么類型。

(13) 如何從一個已存在的 SQLite 數(shù)據(jù)表中添加/刪除字段?

SQLite有有限的ALTER TABLE支持,可以用于添加字段到表的末尾 或更改表名。如果你要對表的結(jié)構(gòu)作更復(fù)雜的修改,你需要重新創(chuàng)建表。你可以在一個臨時表中備份數(shù)據(jù),撤銷舊表,重建新表后再恢復(fù)數(shù)據(jù)。

例如,假設(shè)你有一個名為 "t1" 的表,有名為 "a", "b", 和 "c" 三個字段,你要刪除字段 "c" ??砂慈缦虏襟E操作:

BEGIN TRANSACTION;
CREATE TEMPORARY TABLE t1_backup(a,b);
INSERT INTO t1_backup SELECT a,b FROM t1;
DROP TABLE t1;
CREATE TABLE t1(a,b);
INSERT INTO t1 SELECT a,b FROM t1_backup;
DROP TABLE t1_backup;
COMMIT;

相關(guān)文章

最新評論