1.sqlite_master表
sqlite_master是一个表,属于系统表,存放在根页中,每一个数据库的.db文件都有一个sqlite_master表。
sqlite_master表存放了.db中所有表的相关信息,比如:表的名称、用于创建此表的sql语句、索引、索引所属的表、创建索引的sql语句等。
sqlite_master表是只读的,只能对他进行读操作,写的操作由系统自动执行,使用者没有写的执行权限。用户对自定义表的操作多会自动同步到这个表中。
2.sqlite_master结构:
sqlite_master(
type TEXT,
name TEXT,
tbl_name TEXT,
rootpage INTEGER,
sql TEXT
);
TEXT——:text永远默认存储的的table,表类的字段
name——:name存放表名的字段,可以输入要查询的表名
使用示例:
1.查询表存在否:SELECT * from sqlite_master where name = '表名'
2.查询表中的字段存在否:SELECT * from sqlite_master where name = '表名' and sql like '%字段%'
(sql like与通配符作用相似,查询包含%%中间的字段)
3.2.查询表中的字段存在否(具体):SELECT * from sqlite_master where name = '表名' and sql = '字段'