Wenn Sie eine Datenbank für den Einsatz lange genug , werden Sie wahrscheinlich in einer Situation führen , in dem Sie eine Tabelle löschen wenn sie existiert wollen . Oft ist der Grund, warum Sie dies tun müssen, ist , weil Sie eine Tabelle zu erstellen und brauchen Sie nicht wollen, um in einen Fehler laufen , wenn Sie es schaffen, weil eine Tabelle mit diesem Namen existiert bereits versuchen , wollen aber nicht zu einer Begegnung Fehler, wenn Sie es fallen, weil sie nicht existiert . Was auch immer Ihre Beweggründe sein mögen, ist dies , wie Sie eine Tabelle löschen , wenn (und nur wenn ) es existiert bereits in MySQL , MS SQL und Oracle. Things You
Oracle , MySQL, MS SQL Server oder
Eine Tabelle Sie Juckreiz loswerden
werden brauchen anzeigen Weitere Anweisungen
1
MySQL war irgendwie genug, um es sehr einfach , um eine vorhandene Tabelle zu löschen . Um die leider genannten Tabelle ' Drop_Me ' fallen , führen Sie die folgende Abfrage -
DROP TABLE IF EXISTS Drop_Me
2
MS SQL macht es etwas schwieriger, eine Tabelle zu löschen , wenn es existiert . Um dies zu erreichen, müssen Sie eine if-Anweisung und der EXISTS -Funktion verwenden -
IF EXISTS ( SELECT 1 FROM WHERE sys.objects OBJECT_ID = OBJECT_ID ( N'Drop_Me ' ) AND type = (N' U ')) DROP TABLE Drop_Me
3
Oracle nimmt die Komplexität der eine Tabelle löschen , wenn es auf die nächste Ebene existiert. In diesem Stück Beispielcode , müssen Sie den Eigentümer der Tabelle , die sich als 'Me ' passiert, wissen -
DECLAREv_count NUMBER : = 0; BEGINSELECT COUNT (*) FROM INTO w_anzahl ALL_TABLES WHERE table_name = ' Drop_Me 'AND owner = ' Me '; IF w_anzahl = 1 THENEXECUTE IMMEDIATE ' DROP TABLE Me.Drop_Me '; END IF; END;