В этом коде я пытаюсь удалить таблицы, если они уже существуют, каждый раз, когда я запускаю программу, но элемент управления не входит в операторы if
. table1
и table2
присутствуют в базе данных. Я проверил это в своей базе данных. Поскольку он не входит в операторы if
, он дает следующую ошибку в последней строке, когда я пытаюсь создать таблицы: ORA-00955: имя уже используется существующим объектом
. Что я делаю не так?
Statement statement = connection.createStatement();
DatabaseMetaData md = connection.getMetaData();
String[] types = {"TABLE"};
ResultSet rs1 = md.getTables(null, null, "table1",types );
if (rs1.next()) {
System.out.println(rs1.getString(3));
statement.executeUpdate("drop table table1");
}
rs1.close();
ResultSet rs2 = md.getTables(null, null, "table2", types);
if (rs2.next()) {
statement.executeUpdate("drop table table2");
}
rs2.close();
statement.executeUpdate("create table table1(" +.....