In PostgreSQL kunnen we de IF EXISTS
. gebruiken clausule van de DROP TABLE
statement om te controleren of de tabel al dan niet bestaat voordat u deze verwijdert.
Voorbeeld
Hier is een voorbeeld om te demonstreren:
DROP TABLE IF EXISTS t1;
Die instructie dropt een tabel genaamd t1
als het bestaat.
Toen ik die instructie uitvoerde in Azure Data Studio (met de Postgres-extensie), bestond de tabel al, en dus werd deze verwijderd en kreeg ik het volgende bericht:
Commands completed successfully
Toen ik het statement opnieuw uitvoerde (nadat het al was verwijderd), kreeg ik het volgende bericht:
NOTICE: table "t1" does not exist, skipping Commands completed successfully
Er is geen fout opgetreden, maar ik kreeg wel een "melding" dat de tabel niet bestaat, samen met een bericht dat de opdracht met succes is voltooid.
Dit is wat er gebeurt als we IF EXISTS
niet gebruiken :
DROP TABLE t1;
Resultaat:
table "t1" does not exist
Deze keer krijgen we een foutmelding dat de tabel niet bestaat.
Zie ook 5 manieren om te controleren of een tabel bestaat in PostgreSQL als u alleen wilt controleren of een tabel bestaat zonder deze te verwijderen.