Sqlite中判断表是否存在的方法

sqlite会自动维护一个系统表sqlite_master,该表存储了我们所创建的各个table, view, trigger等等信息。

sqlite_master表数据字段:

type:  类型,取值一般为table, view

name:    

tbl_name:   表名

rootpage:

sql:创建表或者视图的sql语句,可以从该sql语句中判断某字段是否存在

sqlite_master表结构如下:

CREATE TABLE sqlite_master (   
type TEXT,   
name TEXT,   
tbl_name TEXT,   
rootpage INTEGER,   
sql TEXT   
); 

例如:

select * from sqlite_master where type = 'table' and name = 't_cmpt_cp'

sql执行结果是:

1.   查询与判断表

查询sqlite中所有表,可用如下sql语句。

select name from sqlite_master where type='table' order by name;

我们可以通过如下语句查看这个内建表的所有记录:

select * from sqlite_master

执行结果:

由此可以进一步引申:判断指定的表是否存在,可以用如下语句:

select count(*)  from sqlite_master where type='table' and name = 'yourtablename';

其中yourtablename表示你要判断的表名,如果查询结果大于0,表示该表存在于数据库中,否则不存在。

转自:Sqlite中判断表、字段是否存在的方法_sqlite 判断列是否存在_hanfengzqh的博客-CSDN博客

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值