SQLite 中文指南之FAQ第4/6頁
更新時間:2008年09月12日 18:09:17 作者:
sqllite使用過程中碰到的一些問題解決,中文版
在 C/C++ 程序中 (或使用 Tcl/Ruby/Perl/Python綁定的腳本中)你可以通過訪問名為 "SQLITE_MASTER的表來實現(xiàn)。每個 SQLite 數(shù)據(jù)庫有一個 SQLITE_MASTER 表,表內(nèi)有數(shù)據(jù)庫的結(jié)構(gòu)。 SQLITE_MASTER表是這樣的:
CREATE TABLE sqlite_master (
type TEXT,
name TEXT,
tbl_name TEXT,
rootpage INTEGER,
sql TEXT
);
對于表來說,type字段的值為'table',name 字段是表的名稱。使用以下語句可以等到所有表的列表:
SELECT name FROM sqlite_master
WHERE type='table'
ORDER BY name;
對于索引來說, type = 'index', name 是索引的名稱, tbl_name 是索引所屬的表的名稱。對于表和索引, sql 字段是創(chuàng)建表或索引的原始語句文本。對于自動創(chuàng)建的索引(一般是使用 PRIMARY KEY 或 UNIQUE 創(chuàng)建的),sql字段為 NULL.
SQLITE_MASTER表是只讀的。你不能對該表使用 UPDATE, INSERT, 或 DELETE。該表自動由 CREATE TABLE, CREATE INDEX, DROP TABLE 和 DROP INDEX 命令更新。
臨時表及其索引不在 SQLITE_MASTER 表中而在 SQLITE_TEMP_MASTER 中出現(xiàn)。 SQLITE_TEMP_MASTER 與 SQLITE_MASTER 表一樣工作,但只對于創(chuàng)建臨時表的程序可見。要得到所在表包括臨時表可以使用如下命令:
相關(guān)文章
SQLite中的B-Tree實現(xiàn)細節(jié)分析
本文將詳細介紹SQLite中的B-Tree實現(xiàn)細節(jié),需要了解更多的朋友可以參考下2012-11-11