Mysql
 sql >> Datenbank >  >> RDS >> Mysql

DROP TABLE IF EXISTS in MySQL

In MySQL 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 ausführte, existierte die Tabelle bereits und wurde daher gelöscht, und ich erhielt die folgende Nachricht:

Query OK, 0 rows affected (0.00 sec)

Als ich die Anweisung erneut ausführte (nachdem sie bereits gelöscht worden war), erhielt ich die folgende Meldung:

Query OK, 0 rows affected, 1 warning (0.00 sec)

Es gab also keinen Fehler, aber ich bekam eine Warnung.

Schauen wir uns die Warnung an:

SHOW WARNINGS;

Ergebnis:

+-------+------+-------------------------+
| Level | Code | Message                 |
+-------+------+-------------------------+
| Note  | 1051 | Unknown table 'test.t1' |
+-------+------+-------------------------+

Die Warnung sagt uns, dass die Tabelle nicht existiert, aber es ist kein Fehler.

Folgendes passiert, wenn wir IF EXISTS nicht verwenden :

DROP TABLE t1;

Ergebnis:

ERROR 1051 (42S02): Unknown table 'test.t1'

Diesmal erhalten wir eine Fehlermeldung.

Siehe auch 5 Möglichkeiten, um zu prüfen, ob eine Tabelle in MySQL existiert, wenn Sie nur prüfen möchten, ob eine Tabelle existiert, ohne sie zu löschen.