我正在编写一个使用JDBC的程序,它将检查表是否存在,如果不存在则创建它。
我计划包括以下内容:
String query = (some query);
int createIfNotExists = connection.createStatement().executeUpdate(query);
但它不允许我使用&#34; IF&#34;在我的SQL查询中。为什么是这样?我需要使用一些不同类型的驱动程序吗?或者只是不允许使用JDBC?有没有人以前处理过这个,你怎么处理它?</ p>
答案 0 :(得分:1)
DatabaseMetaData md = connection.getMetaData();
String query = "";
boolean exist=false
ResultSet rs = md.getTables(null, null, "table_name", null);
while (rs.next()) {
exist = True ;
}
if(!exist){
query="CREATE TABLE table_name ...";
connection.createStatement().executeUpdate(query);
}