判断数据库表名是否存在在不同的数据库所用的方法还是不同的,如sqlserver,oracle等主流数据库都拥有自己的方法。不过,不同的数据库来判断数据库表名是否存在都是用自身数据库的系统表。只是每种数据库的系统表不同而已,如sqlserver的系统表是master,而sqlite的系统表是sqlite_master。
知道了sqlite数据库的系统表为sqlite_master,那么我们可以通过查询系统表来 判断sqlite数据库的表名是否存在。 SELECT COUNT(*) as CNT FROM sqlite_master where type='table' and name='表名' 这条语句来判断sqlite数据库中表名是否存在,根据查到的返回值来判断:存在返回1,不存在返回0。 实例应用: sqlLiteHelper.ConnsqlLiteDbPath = "D:\\Windsqlite\\Httpsqlite\\bin\\Debug\\sqlitedb\\gwitest.db"; string strcreatesqlvale = "SELECT COUNT(*) as CNT FROM sqlite_master where type='table' and name='GH_CITY'"; DataTable dt = sqlLiteHelper.GetDataTable(strcreatesqlvale); if(dt.Rows[0][0].ToString().Trim()=="1") { //存在 } if(dt.Rows[0][0].ToString().Trim()=="0") { //不存在 } 上述实例应用中所用到的sqlLiteHelper类为我们在上节所提到的C#连接sqllite文件数据库的通用类代码,大家直接到(http://www.25yi.com/sql/sqllitetongyong-287/)复制相应代码就可以。
原文链接:https://www.f2er.com/sqlite/200188.html知道了sqlite数据库的系统表为sqlite_master,那么我们可以通过查询系统表来 判断sqlite数据库的表名是否存在。 SELECT COUNT(*) as CNT FROM sqlite_master where type='table' and name='表名' 这条语句来判断sqlite数据库中表名是否存在,根据查到的返回值来判断:存在返回1,不存在返回0。 实例应用: sqlLiteHelper.ConnsqlLiteDbPath = "D:\\Windsqlite\\Httpsqlite\\bin\\Debug\\sqlitedb\\gwitest.db"; string strcreatesqlvale = "SELECT COUNT(*) as CNT FROM sqlite_master where type='table' and name='GH_CITY'"; DataTable dt = sqlLiteHelper.GetDataTable(strcreatesqlvale); if(dt.Rows[0][0].ToString().Trim()=="1") { //存在 } if(dt.Rows[0][0].ToString().Trim()=="0") { //不存在 } 上述实例应用中所用到的sqlLiteHelper类为我们在上节所提到的C#连接sqllite文件数据库的通用类代码,大家直接到(http://www.25yi.com/sql/sqllitetongyong-287/)复制相应代码就可以。