Mysql
 sql >> Database >  >> RDS >> Mysql

DROP TABLE SE ESISTE in MySQL

In MySQL, 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.00 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.00 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 'test.t1' |
+-------+------+-------------------------+

L'avviso ci dice che la tabella non esiste, ma non è un errore.

Ecco cosa succede quando non utilizziamo IF EXISTS :

DROP TABLE t1;

Risultato:

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

Questa volta riceviamo un errore.

Vedi anche 5 modi per verificare se esiste una tabella in MySQL se vuoi solo verificare se esiste una tabella senza eliminarla.