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