当前位置:首页 » 操作系统 » sqlite判断数据库是否存在

sqlite判断数据库是否存在

发布时间: 2022-05-06 23:22:26

Ⅰ 如何判断sqllite库中的表是否存在

SQLite判断表是否存在

今天刚好用到sqlite来存放一些数据,但是需要检测表是否已经存在;

其实很简单,只要查看sqlite_master表中是否存在这条数据就可以知道了

SELECT count(*) FROM sqlite_master WHERE type='table' AND name='tableName';

转自甲壳虫。

Ⅱ sqlite 查询数据库是否有数据

正常连接SQLite数据库后,获取下数据库的记录,如果返回数量为0,就是没有数据的。

Ⅲ Android sqlite中判断某个表是不是存在方法

sqlite 中判断某个表是否存在的方法

/**
* 判断某张表是否存在
* @param tabName 表名
* @return
*/
public boolean tabbleIsExist(String tableName){
boolean result = false;
if(tableName == null){
return false;
}
SQLiteDatabase db = null;
Cursor cursor = null;
try {
db = this.getReadableDatabase();
String sql = "select count(*) as c from Sqlite_master where type ='table' and name ='"+tableName.trim()+"' ";
cursor = db.rawQuery(sql, null);
if(cursor.moveToNext()){
int count = cursor.getInt(0);
if(count>0){
result = true;
}
}

} catch (Exception e) {
// TODO: handle exception
}
return result;
}

Ⅳ C#Sqlite 创建数据库时怎么判断当前创建的数据库是否存在

select sql from sqlite_master where tbl_name='your_table' and
type='table';
这样到查询会得到your_table表到创建sql语句,你可以根据这个结果来判断是否存在此字段。

Ⅳ sqlite中判断某个表是否存在方法

sqlite 中判断某个表是否存在的方法,贴出来供大家参考/*** 判断某张表是否存在*@paramtabName 表名*@return*/publicbooleantabbleIsExist(String tableName){booleanresult =false;if(tableName ==null){returnfalse;}SQLiteDatabase db =null;Cursor cursor =null;try{db =this .getReadableDatabase(); //这里表名可以是 String sql = "select count(*) as c from "+AppConstant.DataBaseName+" where type ='table' and name ='"+tableName.trim()+"' ";

Ⅵ sqlite怎么判断表里面是否有数据。not exists

select count(*) from 表名
把得到的结果放变量里
如果结果=0,则无记录,大于0就是有记录呗

Ⅶ 请问SQLite如何检查一条数据是否已经存在

//android里
//数据库类里

//查询方法:
public Cursor select(){
SQLiteDatabase db = getReadableDatabase();
return db.query(
TBName,
new String[]{"username","password"},
null,
null, null, null, "_id desc");

Cursor cursor = 类名.select();
//判断语句:

if (cursor.moveToFirst() == false) {
//为空的Cursor
return;
}
//基本上就是这个思路

Ⅷ sqlite如何判断表中是否有数据

//读取数据
Cursor c = db.rawQuery("SELECT* FROM person WHERE age >= ?", new String[]{"33"});
int i = 0;
while (c.moveToNext()) {
i++;
}
c.close();
这个i的值就是记录的条数,是0的话就什么也没有查到

Ⅸ 怎么判断sqlite3中某个表是否已经存在

可以查询sqlite_master表。该表是用来保存当前数据库中创建的所有表,索引,触发器。该表含有5个字段,分别是type,name,tbl_name,rootpage,sql.意义分别如下:

type:类型,可以为table,index,trigger
name:名称,为对应表,索引,触发器名称
tbl_name:未索引,触发器对应表名
rootpage:为对应表,索引在数据库中存储的根页号
sql:创建的sql语句

至此,我们可以使用如下语句进行查询:
select*fromsqlite_masterwherename='你的表名';
如果有,就会返回数据,否则不返回。

另外也可以用下面方法
pragmatable_info('你的表名');
用来查询你的表结构,如果有,就会返回你的表结构,如果没有该表,则不返回值。

还可以使用如下方法:
select*from你的表名where1=0;
如果有该表,你执行的sql语句不会报错,如果没有,则你执行的sql语句会报错,这样也能判断。

Ⅹ sqlite查看所有表名及字段名,及判断是否存

1.查询与判断表

查询sqlite中所有表,可用如下sql语句。原理是,sqlite中有一个内建表sqlite_master,这个表中存储这所有自建表的表名称等信息。

select name fromsqlite_master where type='table' order by name;

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

select * fromsqlite_master;

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

selectcount(*) from sqlite_master wheretype='table' and name = 'yourtablename';

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

2.查询与判断列

通过以下语句可查询出某个表的所有字段信息

PRAGMA table_info([tablename])

比如:我想查看表catalog的所有列信息,可以用下述代码,结果如图所示:

PRAGMA table_info(catalog)

3.Sqlite中新增、删除、重命名列

3.1新增一列

方法:使用sql命令

命令:ALTER TABLE table-nameADD COLUMN column-namecolumn-type

例如:在student表中添加一列名为name,类型为varchar:

alter table student add column name varchar;

alter table catalog add column xxx1 char(20) default '';

3.2删除一列

方法:由于drop命令在sqlite中不可用于删除列,

alter table student drop column name // 该行在SQlite中不能用,SQlite不支持drop

可采用如下思路,类似于swap()函数的过程。

比如我有表A,A中有x、y、z三列。我要将表A中的x列删掉。那么,

第1步,新建一个表B,B中含有y、z两个字段,且类型与A中的y、z类型相同。

第2步,将A中的所有y、z两列的值拷贝到B中。

上面两步使用一句命令即可完成

create table B asselect y,z from A

注意,如果A中y的类型为char,则上面create命令会在B中创建类型为TEXT的y列。即char类型会被改变。

第3步,将A表删除

drop table ifexists A

第4步,将B重命名为A

alter table Brename to A

3.3重命名一列

方法:与删除一列相同,在sqlite中alter同样无法重命名一列。如果想重命名,那么思路与删除一列相同。

4.Sqlite中新增、删除、重命名表

Sql语句在3.2中已有。整理如下。

4.1新增表

create table A(id char(20),channeltext,name text,primary key (id))

create table B as select y,z from A

4.2删除表

drop table if exists A

4.3重命名表

alter table B rename to A

热点内容
直出服务器怎么样 发布:2024-10-07 15:41:36 浏览:476
比亚迪唐dmi哪个配置性价比 发布:2024-10-07 15:19:28 浏览:901
编译器按变量 发布:2024-10-07 15:07:03 浏览:773
怎么忘记电脑wifi密码怎么办 发布:2024-10-07 15:02:18 浏览:424
安卓开发java开发 发布:2024-10-07 15:01:29 浏览:94
工业级安卓主板价格怎么样 发布:2024-10-07 14:07:57 浏览:626
编程先乘除 发布:2024-10-07 13:58:45 浏览:269
编译内核时发生循环编译 发布:2024-10-07 13:58:43 浏览:495
当下笔记本电脑什么配置好 发布:2024-10-07 12:57:33 浏览:471
安卓倒车轨迹怎么调 发布:2024-10-07 12:54:47 浏览:916