一伪嫁、概述
1.SQLite數(shù)據(jù)庫中有一個內(nèi)置表领炫,名為SQLITE_MASTER
,此表中存儲著當(dāng)前數(shù)據(jù)庫中所有表的相關(guān)信息张咳,比如表的名稱驹吮、用于創(chuàng)建此表的sql語句、索引晶伦、索引所屬的表碟狞、創(chuàng)建索引的sql語句等。
2.SQLITE_MASTER表示只讀的婚陪,只能對他進行讀操作族沃,寫操作只能由系統(tǒng)自身觸發(fā),使用者沒有權(quán)限。所有對用戶自定義表的結(jié)構(gòu)修改操作脆淹,會自定更新到此表常空。
二、SQLITE_MASTER表的結(jié)構(gòu)如下:
CREATE TABLE sqlite_master (
type TEXT,
name TEXT,
tbl_name TEXT,
rootpage INTEGER,
sql TEXT
);
三盖溺、應(yīng)用場景
1.查詢表信息
如果要查詢表的信息漓糙,則type字段為“table”,name字段為表的名稱烘嘱,返回結(jié)果中返回的sql字段昆禽,為創(chuàng)建此表的sql語句。
select * from sqlite_master where type=’table’ and name=‘表名’;
2.查詢索引信息
如果要查詢索引信息蝇庭,則type字段為“index”醉鳖,name字段為索引名稱,返回結(jié)果中的tbl_name字段為該索引所屬的表哮内,sql字段為創(chuàng)建此索引的sql語句盗棵。
select * from sqlite_master where type=’index’ and name=‘索引名’;
四、臨時表
臨時表不包含在SQLITE_MASTER表中北发,SQLITE_TEMP_MASTER專門用來存儲臨時表的信息纹因,此表和SQLITE_MASTER表的結(jié)構(gòu)一致。
轉(zhuǎn)載:
https://blog.csdn.net/jingcheng345413/article/details/70155254