In MySQL 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 verklaring uitvoerde, bestond de tabel al, en dus werd hij verwijderd en kreeg ik het volgende bericht:
Query OK, 0 rows affected (0.00 sec)
Toen ik het statement opnieuw uitvoerde (nadat het al was verwijderd), kreeg ik het volgende bericht:
Query OK, 0 rows affected, 1 warning (0.00 sec)
Er was dus geen fout, maar ik kreeg wel een waarschuwing.
Laten we eens kijken naar de waarschuwing:
SHOW WARNINGS;
Resultaat:
+-------+------+-------------------------+ | Level | Code | Message | +-------+------+-------------------------+ | Note | 1051 | Unknown table 'test.t1' | +-------+------+-------------------------+
De waarschuwing vertelt ons dat de tabel niet bestaat, maar het is geen fout.
Dit is wat er gebeurt als we IF EXISTS
niet gebruiken :
DROP TABLE t1;
Resultaat:
ERROR 1051 (42S02): Unknown table 'test.t1'
Deze keer krijgen we een foutmelding.
Zie ook 5 manieren om te controleren of een tabel bestaat in MySQL als u alleen wilt controleren of een tabel bestaat zonder deze te laten vallen.