Oracle DROP TABLE IF EXISTS

capri

Mitglied
Hallo Forum,

ich bin gerade (oder eher immer noch) dabei Schema-Migration von PostgreSQL in Oracle.

Die Tabellen inkl. PrimaryKey und ForeignKey habe ich in Oracle erstellen können. Ich möchte aber bevor ich die Tabellen erstelle kontrollieren, ob die Tabellen mit gleichem Namen schon in der DB vorhanden sind bzw. wenn diese vorhanden sind, müssen sie vor dem CREATE TABLE Befehl gelöscht werden.

Dafür hätte ich normalerweise den Befehl "DROP TABLE IF EXISTS" benutzt. Leider scheint oracle SQL-Developer das nicht zu unterstützen. Ich hatte von Blöcken BEGINN ... END gelesen:

Code:
String myDropTable = "BEGIN EXECUTE IMMEDIATE 'DROP TABLE " + tName.toUpperCase()
+ "'; EXCEPTION WHEN OTHERS THEN   IF SQLCODE != -942 THEN RAISE;END IF; END;";

 Statement stmt4;
 stmt4 = con2.createStatement();
 ResultSet rs4 = stmt4.executeQuery(myDropTable);

Aber hier habe ich folgende Fehlermeldung bekommen:
java.sql.SQLException: SQL-Zeichenfolge ist keine Abfrage.

Wie binde ich den Block hier richtig ein? Oder wie kann ich "DROP TABLE IF EXISTS" am sinnvollsten ersetzen?

Schönen Dank im Voraus!
capri
 

capri

Mitglied
Hallo httpdigest,

danke schön für deine Antwort!
Methode .executeUpdate() war eigentlich genau das, was ich gesucht hatte. Leider funktioniert das Ganze trotzdem nicht: Ich kriege Fehlermeldung: "Eindeutige und Primärschlüssel in Tabelle von Fremdschlüsseln referenziert".

Wenn ich die Fehlermeldung richtig interpretiere, gibt es in der zu löschenden Tabelle Schlüsseln vorhanden, was das Löschen verhindert.

Wie kann ich diese Problematik umgehen? Kann man irgendwie alle Tabellen auf einen Schlag löschen? Oder gibt es sonst einen Trick?

Noch mal danke und viele Grüße
capri
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Derby/JavaDB Drop Database problem Datenbankprogrammierung 3
Z Aus zwei bestehenden Table eine zusätzliche Gemeinsame machen (JavaFX) Datenbankprogrammierung 21
O HOW TO INSERT PRIMARY INTO ANOTHER TABLE AND USE IT AS FOREIGN KEY TO DISPLAY DATA IN A RELATIONSHIP Datenbankprogrammierung 3
O Create Table per JDBC Fehler: ORA-00922 Datenbankprogrammierung 4
D SQL-Statement Beziehungsfehler bei CREATE TABLE Datenbankprogrammierung 2
S Table per Class Datenbankprogrammierung 2
F Create Table - Habe ich eine schwache Entität erzeugt ? Datenbankprogrammierung 4
L SQL Fehler (Table/View does not exist) Datenbankprogrammierung 17
I Access Datenbank in Table einlesen lassen Datenbankprogrammierung 2
M Derby/JavaDB Kleine DB mit Tabelle erweitern - Integrität - Alter-Table - Netbeans ... Datenbankprogrammierung 5
OnDemand Update table SET will nicht Datenbankprogrammierung 9
ruutaiokwu sql server t-sql: try/catch bei ALTER TABLE ? Datenbankprogrammierung 4
K Derby/JavaDB '<columnName>' is not a column in table or VTI '<value>'. Datenbankprogrammierung 12
J Java DB Neuen Eintrag am Anfang der Table Datenbankprogrammierung 6
H JDBC prüfen ob Table existiert Datenbankprogrammierung 3
P sql statement alter table foreign key Datenbankprogrammierung 4
c_sidi90 Hibernate Problem Table doesnt excist Datenbankprogrammierung 8
R Select Statement als temporärer Table Datenbankprogrammierung 7
H MySQL Tabelle "Table" programmieren Datenbankprogrammierung 2
M MySQL Table in Jtable integrieren Datenbankprogrammierung 26
F H2:Wie kann man insert eine Reihe "int" wert als blob in table? Datenbankprogrammierung 12
M Insert in Table mit 250 Feldern Datenbankprogrammierung 2
M Bei HSQLDB etwas wie OPTIMIZE TABLE? Datenbankprogrammierung 2
X von myISAM auf MEMORY! ERROR 1114: Table full Datenbankprogrammierung 13
S Create Table mit PreparedStatement Datenbankprogrammierung 2
M Vor CREATE TABLE Datenbanknamen festlege Datenbankprogrammierung 4
S insert into table Datenbankprogrammierung 8
M Create Table und setString Datenbankprogrammierung 2
M Create Table Datenbankprogrammierung 8
X SHOW TABLE STATUS FROM xxxx Datenbankprogrammierung 2
T CREATE TABLE in Access DB Datenbankprogrammierung 2
B datentyp boolean bei create table Datenbankprogrammierung 2
T Cast-Fehler: Spring Data exists.... boolean??? Datenbankprogrammierung 1
C Java MySQL check if value exists in database Datenbankprogrammierung 2
M Geschwindigkeitsvorteil durch Exists Operator? Datenbankprogrammierung 1
P fireBird/ IF EXISTS Datenbankprogrammierung 4

Ähnliche Java Themen

Neue Themen


Oben