Android 判断数据库中是否存在某个表

public boolean tabIsExist(String tabName){
            boolean result = false;
            if(tabName == null){
                    return false;
            }
            Cursor cursor = null;
            try {

                    String sql = "select count(*) as c from sqlite_master where type =‘table‘ and name =‘"+tabName.trim()+"‘ ";
                    cursor = dbInfo.rawQuery(sql, null);
                    if(cursor.moveToNext()){
                            int count = cursor.getInt(0);
                            if(count>0){
                                    result = true;
                            }
                    }

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

对sqlite_master表查询不但可以得到建表的sql语句,还可以获取该数据库内的trigger信息

而在纯Java环境下对SQL数据库查询是否目标表格存在的时候可以更简单:

java.sql.Connection con = getYourConnection(); 

ResultSet rs = con.getMetaData().getTables(null, null, "yourTable", null );
if (rs.next()) {
//yourTable exist
}else {
//yourTable not exist
}
时间: 2024-11-06 03:55:50

Android 判断数据库中是否存在某个表的相关文章

如何判断数据库中是否存在某个表

1. Oracle select * from user_tables where table_name = '表名称' 记得表名大写. 2. mysql SELECT table_name FROM `INFORMATION_SCHEMA`.`TABLES` WHERE table_name ='表名称' 3. Oracle导出表数据 SQL> spool e:\aa.sqlStarted spooling to e:\aa.sql SQL> set head off;SQL> sel

数据库中的二维表—巧借Excel

一维表和二维表的区别         一维表也常称为流水线表格,它和二维表做出的数据透视表最大的区别在于"行总计".判断数据是一维表格还是二维表格的一个最简单的办法,就是看其列的内容--每一列是否是一个独立的参数.如果每一列都是独立的参数那就是一维表,如果每一列都是同类参数那就是二维表. 二维表的建立     开始在网上一直查找如何在数据库中建立二维表,查了很多资料大多是什么静态和动态的sql语句建立,看了看也不是很清楚但是在查询的时候总是出来Excel如何如何,于是便想是否可以在Ex

获取sqlserver数据库中所有库、表、字段名的方法

1.获取所有数据库名: SELECT Name from Master..SysDatabases ORDER BY Name 2.获取所有表名: SELECT Name from DatabaseName..SysObjects Where XType='U' ORDER BY Name XType='U':表示所有用户表; XType='S':表示所有系统表; 3.获取所有字段名: SELECT Name from SysColumns WHERE id=Object_Id('TableNa

mysql创建某个数据库中的某张表 只读用户

1.创建用户,并授权SELECT查询权限,授权远程访问权限,注意,命令中username/password指用户名密码,请自己指定.若要限制仅指定IP可以使用此用户访问Mysql,将%改为具IP即可,dbname指定限制的数据库,如果是全部则改为*. GRANT SELECT ON dbname.* TO 'username'@'%' IDENTIFIED BY "password"; 2.刷新mysql权限,使用户创建.授权生效. FLUSH PRIVILEGES; privileg

查看数据库中存在触发器的表

这次在项目中,我们为了做数据库同步,采用了触发器机制,为数据库做迁移时,我们需要获取数据库中那些表使用了触发器,方便制作数据库安装包. 构思: 触发器在MSSQL作为一个对象进行管理,那么我们就可以通过sysobjects表进行查询获取,所以我们就编写了一下触发器获取SQL SELECT object_name(a.parent_obj) as [表] ,a.name as [触发器] ,(case when b.is_disabled=0 then '使用中' else '停用' end) a

sql语句联表更新(从一个数据库中的一张表更新到另一个数据库的另一张表)

一.sql server数据库写法: update a set a.ksgmm=b.ksgmm,a.ksgm=b.ksgm,a.scztm=b.scztm,a.sczt=b.sczt from landsde.sde.jszb a,kyqcldb.dbo.kcl_ksjj b where a.nd=b.nd and a.kqbh=b.kqbh and a.djflbh =b.djflbh 其中landsde.sde.jszb.kyqcldb.dbo.kcl_ksjj是不同数据库下的不同数据表 二

判断数据库中数据表是否存在

<?php /** * 查询数据库是否存在功能 $sql:查询数据库的SQL语句 $find_table:需要检查的表名 */ mysql_connect('localhost', 'root', '2260375') or die('can\'t not connect database'); if ((int)check_table_is_exist('show databases;', 'test') == 1) { echo '该表存在'; } else { echo '该表不存在';

判断两个数据库中不一样的表和存储过程

---两表结构不一样SELECT a.a1,a.a2,a.a3,a.length from(SELECT a.a1,a.a2,a.a3,a.length, b.a1 AS b1,b.a2 AS b2,b.a3 AS b3,b.length AS b4  from (select o.name AS a1, c.name AS a2,t.name AS a3,c.length from dbf.sys.syscolumns cinner join dbf.sys.systypes t on c.x

android开发 服务器端访问MySQL数据库,并把数据库中的某张表解析成xml格式输出到浏览器

我们此时只要写一个Servlet就可以了: public class UpdateMenuServlet extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; // 构造方法 public UpdateMenuServlet() { super(); } // 销毁方法 public void destroy() { super.destroy(); } // 响应Get请求 public