java 怎么检测MySQL表的存在

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 怎么检测MySQL表的存在相关的知识,希望对你有一定的参考价值。

  1、sql语句判断数据库表是否存在:
  sql:select * from user_all_tables where table_name='tableName'
  如果结果为空则表示不存在,如何结果不为空则表示存在;

  2、java如何判断数据库表是否存在
  可以利用上面的sql,执行获取结果,相应的java代码如下:
  String helperName= delegator.getGroupHelperName("com.asiainfo");
  SQLProcessor sqlProcessor= new SQLProcessor(helperName);
  String sql = "select * from user_all_tables where table_name='"+table+"'";
  ResultSet rsTables =sqlProcessor.executeQuery(sql);
  if(rsTables.next())
  Debug.logWarning("table:"+table+" exists", module);
  else
  Debug.logWarning("table:"+table+" does not exist", module);
  
参考技术A select * from information_schema.TABLES where table_schema ='databaseName' and table_name = 'tableName';

如果结果是空就不存在。
databaseName:要查询的数据库名称
tableName:要查询的表名称追问

返回值为boolean么?还是int?

追答

看你用什么查询咯,如果是Spring Jdbc,返回List,判断List的size();如果是ResultSet,rs.next()为true就有数据,false就没有数据

追问

那是mysql呢?

追答

你不是JAVA检测吗?JAVA里连接数据库然后判断结果集

参考技术B 从information_schema数据库tables表中查询 参考技术C mysql exists 语法追问

可以具体一些么?

以上是关于java 怎么检测MySQL表的存在的主要内容,如果未能解决你的问题,请参考以下文章

mysql 查询一个表中没有存在在另一个表的数据

mysql查询一个列名都存在于哪些表

mysql中的sql语句存在关键字怎么办

mysql中的sql语句存在关键字怎么办?

在JSP页面下使用AJAX实现用户名存在的检测

如何将约束添加到 MYSQL 中的列仅以保存已存在于同一表的另一列中的值? [复制]