java - 检查 MySQL RDMS 上是否存在表

标签 java mysql sql

我这里有访问 mySQL 数据库的 java 代码。它检查表是否存在。该表已删除且不存在,但下面的代码表明该表存在。

private Boolean tableExists(String globalId) {
  // schema Test
  DBResult result =  db.selectQuery("SELECT table_name 
                                       FROM information_schema.tables 
                                      WHERE table_schema = '"+schema+"' 
                                        AND table_name = " + "\'" + "category_"+globalId.split("-")[1]+ "\'"+";");
  if(result.getRowCount() > 0) {
    logger.info(" Table exist "+globalId);
    return true; 
  } else {
    logger.info("table does not exist "+ globalId);
    return false;
  }
}

该方法返回真表存在。后来,程序发现该表不存在并崩溃。请问是什么问题?该程序在 Tomcat 6 上运行。

最佳答案

重新启动 MySQL。 (必要时终止进程)。这应该有效。

MySQL 中存在同步问题。

关于java - 检查 MySQL RDMS 上是否存在表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6132304/

相关文章:

sql - 如何在 SQL Server 中生成日期范围

java - 在 Java 中创建虚拟模板方法

java - 关于使用什么平台和技术的建议 : distributed bookkeeping app

java - 如何为对象分配特定的 int 值?

c# - 工厂模式很多参数需要提示

php - Mysql从其他表中选择昵称?

mysql - 两点之间的距离。东西+南北

mysql - Docker mysql 镜像在带有 Arch ARM 的 Raspberry Pi 上不断失败

php - MySql 查询错误是什么?

mysql - 这个sql表创建有什么问题(外键问题)