En MySQL, podemos usar IF EXISTS
cláusula de la DROP TABLE
instrucción para verificar si la tabla existe o no antes de descartarla.
Ejemplo
Aquí hay un ejemplo para demostrarlo:
DROP TABLE IF EXISTS t1;
Esa declaración suelta una tabla llamada t1
si existiera.
Cuando ejecuté esa declaración, la tabla ya existía, por lo que se eliminó y recibí el siguiente mensaje:
Query OK, 0 rows affected (0.00 sec)
Cuando volví a ejecutar la declaración (después de que ya se había descartado), recibí el siguiente mensaje:
Query OK, 0 rows affected, 1 warning (0.00 sec)
Así que no hubo ningún error, pero recibí una advertencia.
Echemos un vistazo a la advertencia:
SHOW WARNINGS;
Resultado:
+-------+------+-------------------------+ | Level | Code | Message | +-------+------+-------------------------+ | Note | 1051 | Unknown table 'test.t1' | +-------+------+-------------------------+
La advertencia nos dice que la tabla no existe, pero no es un error.
Esto es lo que sucede cuando no usamos IF EXISTS
:
DROP TABLE t1;
Resultado:
ERROR 1051 (42S02): Unknown table 'test.t1'
Esta vez obtenemos un error.
Consulte también 5 formas de verificar si existe una tabla en MySQL si solo desea verificar si existe una tabla sin descartarla.