sqlite_master表是SQLite的系统表。该表记录该数据库中保存的表、索引、视图、和触发器信息。每一行记录一个项目。在创建一个SQLIte数据库的时候,该表会自动创建。
sqlite_master表包含5列:type,name,tbl_name,rootpage,sql
type列
记录了项目的类型,如table、index、view、trigger。
name列
记录了项目的名称,如表名、索引名等。
tbl_name列
记录所从属的表名,如索引所在的表名。对于表来说,该列就是表名本身。
rootpage列
记录项目在数据库页中存储的编号。对于视图和触发器,该列值为0或者NULL。
sql列
记录创建该项目的SQL语句。
由于sqlite_master表存储所有的数据库项目,所以可以通过该表判断特定的表、视图或者索引是否存在。例如,以下语句可以判断user表是否存在。
select count(*) from sqlite_master where name='user' and type='table'