В PostgreSQL можем да използваме IF EXISTS клауза на DROP TABLE оператор, за да проверите дали таблицата съществува или не, преди да я пуснете.
Пример
Ето пример за демонстрация:
DROP TABLE IF EXISTS t1;
Това изявление пуска таблица, наречена t1 ако съществува.
Когато изпълних тази инструкция в Azure Data Studio (с нейното разширение Postgres), таблицата вече съществуваше и затова беше изпусната и получих следното съобщение:
Commands completed successfully
Когато стартирах изявлението отново (след като вече беше премахнато), получих следното съобщение:
NOTICE: table "t1" does not exist, skipping Commands completed successfully
Не възникна грешка, но получих „известие“, че таблицата не съществува, заедно със съобщение, че командата е завършила успешно.
Ето какво се случва, когато не използваме IF EXISTS :
DROP TABLE t1; Резултат:
table "t1" does not exist
Този път получаваме грешка, която ни казва, че таблицата не съществува.
Вижте също 5 начина да проверите дали таблица съществува в PostgreSQL, ако просто искате да проверите дали таблица съществува или не, без да я изпускате.