In PostgreSQL können wir den IF EXISTS
verwenden -Klausel der DROP TABLE
-Anweisung, um zu prüfen, ob die Tabelle existiert oder nicht, bevor sie gelöscht wird.
Beispiel
Hier ist ein Beispiel zur Veranschaulichung:
DROP TABLE IF EXISTS t1;
Diese Anweisung löscht eine Tabelle namens t1
wenn es existiert.
Als ich diese Anweisung in Azure Data Studio (mit seiner Postgres-Erweiterung) ausführte, war die Tabelle bereits vorhanden, und sie wurde gelöscht, und ich erhielt die folgende Meldung:
Commands completed successfully
Als ich die Anweisung erneut ausführte (nachdem sie bereits gelöscht worden war), erhielt ich die folgende Meldung:
NOTICE: table "t1" does not exist, skipping Commands completed successfully
Es ist kein Fehler aufgetreten, aber ich habe eine „Benachrichtigung“ erhalten, dass die Tabelle nicht existiert, zusammen mit einer Meldung, dass der Befehl erfolgreich abgeschlossen wurde.
Folgendes passiert, wenn wir IF EXISTS
nicht verwenden :
DROP TABLE t1;
Ergebnis:
table "t1" does not exist
Dieses Mal erhalten wir eine Fehlermeldung, die uns mitteilt, dass die Tabelle nicht existiert.
Siehe auch 5 Möglichkeiten, um zu prüfen, ob eine Tabelle in PostgreSQL existiert, wenn Sie nur prüfen möchten, ob eine Tabelle existiert, ohne sie zu löschen.