In MariaDB, possiamo usare IF EXISTS
clausola del DROP TABLE
istruzione per verificare se la tabella esiste o meno prima di eliminarla.
Esempio
Ecco un esempio da dimostrare:
DROP TABLE IF EXISTS t1;
Tale istruzione rilascia una tabella chiamata t1
se esiste.
Quando ho eseguito quell'istruzione, la tabella esisteva già, quindi è stata eliminata e ho ricevuto il seguente messaggio:
Query OK, 0 rows affected (0.156 sec)
Quando ho eseguito di nuovo l'istruzione (dopo che era già stata eliminata), ho ricevuto il seguente messaggio:
Query OK, 0 rows affected, 1 warning (0.028 sec)
Quindi non c'è stato alcun errore, ma ho ricevuto un avviso.
Diamo un'occhiata all'avviso:
SHOW WARNINGS;
Risultato:
+-------+------+------------------------+ | Level | Code | Message | +-------+------+------------------------+ | Note | 1051 | Unknown table 'zap.t1' | +-------+------+------------------------+
Quindi l'avviso ci dice che la tabella non esiste, ma almeno non è un errore.
Ecco cosa succede quando non utilizziamo IF EXISTS
:
DROP TABLE t1;
Risultato:
ERROR 1051 (42S02): Unknown table 'zap.t1'
Questa volta riceviamo un errore.
Vedi anche 4 modi per verificare se esiste una tabella in MariaDB se vuoi solo controllare se esiste una tabella senza eliminarla.