检查 table 是否存在于 informix 和 postgresql 数据库中
Check if table exists in informix and postgresql database
我想在创建新的之前检查 table 是否存在。我正在使用以下方法:
DatabaseMetaData dbmd = con.getMetaData();
ResultSet rs = dbmd.getTables(null, null, getTableNamePattern(), null);
if (rs != null) {
if (rs.next()) {
return true;
}
}
它在 oracle、sqlserver 和 mysql 等数据库上运行良好。但是,它不适用于 informix 和 postgresql。有人有好的建议吗?谢谢
我刚刚在 PostgreSQL 上试了一下,效果很好。
问题可能出在您的搜索模式中。请记住以下几点:
_
用作单个字母的通配符,%
用作任意字符串的通配符。
模式区分大小写,table名称在 PostgreSQL 中默认为小写。
我想在创建新的之前检查 table 是否存在。我正在使用以下方法:
DatabaseMetaData dbmd = con.getMetaData();
ResultSet rs = dbmd.getTables(null, null, getTableNamePattern(), null);
if (rs != null) {
if (rs.next()) {
return true;
}
}
它在 oracle、sqlserver 和 mysql 等数据库上运行良好。但是,它不适用于 informix 和 postgresql。有人有好的建议吗?谢谢
我刚刚在 PostgreSQL 上试了一下,效果很好。
问题可能出在您的搜索模式中。请记住以下几点:
_
用作单个字母的通配符,%
用作任意字符串的通配符。模式区分大小写,table名称在 PostgreSQL 中默认为小写。