我想做与这个问题的答案相同的事情: Check if table exists 但我想检查是否存在任何表,而不仅仅是特定的表并且不迭代表名称,我的意思是数据库中是否存在任何表。 根据API,getTables()的第三个参数,
tableNamePattern - a table name pattern; must match the table name as it is stored in the database
所以看起来表名应该在数据库中完全匹配。有没有更好的方法来查找数据库中是否存在任何表?或者我真的必须循环遍历表名数组并调用:
getConnection().getMetaData().getTables(null, null, "table", null).next();
每次迭代?
最佳答案
您可以通过查询表INFORMATION_SCHEMA.TABLES
来确定是否存在任何表:
select *
from INFORMATION_SCHEMA.TABLES;
如果您想查找名称中的特定模式,可以添加 where
子句:
WHERE table_name like YOURPATTERNHERE
关于java - 检查数据库中是否有表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24846983/