2016-06-22 21 views
1

Ich brauche eine Tabelle zu löschen, die einen Kleinbuchstaben Namen hat, dh academyDrop-Tabelle, die den Namen in Kleinbuchstaben von der Kommandozeile hat

aber wenn ich db2 drop table academy oder db2 drop table "academy" ich:

DB21034E The command was processed as an SQL statement because it was not a 
valid Command Line Processor command. During SQL processing it returned: 
SQL0204N "DB2INST1.ACADEMY" is an undefined name. SQLSTATE=42704 

Derselbe Befehl funktionierte jedoch für Großbuchstaben Tabellennamen.

Wenn ich meine Tabellen Ich habe > db2 LIST TABLES

Table/View      Schema   Type Creation time    
------------------------------- --------------- ----- -------------------------- 
AA        DB2INST1  T  2016-06-07-14.23.08.927146 
MYNEWTABLE      DB2INST1  T  2016-06-07-14.29.50.859806 
academy       DB2INST1  T  2016-06-07-17.05.27.510905 
+0

Es scheint, als ich den Befehlszeilenprozessor eingeben, verschwindet der Fehler und 'drop table„Akademie“' 'Rückkehr DB20000I Der SQL-Befehl wurde erfolgreich abgeschlossen – John

Antwort

2

In db2 drop table "academy" Zitate werden von der Shell geschluckt. Sie finden sie fliehen müssen:

db2 drop table \"academy\" 

oder die gesamte Aussage zitieren:

db2 'drop table "academy"' 
0

Versuchen Sie, eine select * from „Akademie“ zu tun und sehen, ob es auch in der Tabelle aufrufen. Wenn dies der Fall ist, sollten Sie dieselbe Abfrage erneut ausführen können. Ersetzen Sie das Wort "select" nur durch "drop".