В MySQL можем да използваме IF EXISTS клауза на DROP TABLE оператор, за да проверите дали таблицата съществува или не, преди да я пуснете.
Пример
Ето пример за демонстрация:
DROP TABLE IF EXISTS t1;
Това изявление пуска таблица, наречена t1 ако съществува.
Когато изпълних това изявление, таблицата вече съществуваше и затова беше изпусната и получих следното съобщение:
Query OK, 0 rows affected (0.00 sec)
Когато стартирах изявлението отново (след като вече беше изхвърлено), получих следното съобщение:
Query OK, 0 rows affected, 1 warning (0.00 sec)
Така че нямаше грешка, но получих предупреждение.
Нека да разгледаме предупреждението:
SHOW WARNINGS; Резултат:
+-------+------+-------------------------+ | Level | Code | Message | +-------+------+-------------------------+ | Note | 1051 | Unknown table 'test.t1' | +-------+------+-------------------------+
Предупреждението ни казва, че таблицата не съществува, но не е грешка.
Ето какво се случва, когато не използваме IF EXISTS :
DROP TABLE t1; Резултат:
ERROR 1051 (42S02): Unknown table 'test.t1'
Този път получаваме грешка.
Вижте също 5 начина да проверите дали таблица съществува в MySQL, ако просто искате да проверите дали съществува таблица, без да я изпускате.