Стандартний синтаксис SQL є
DROP TABLE table_name;
IF EXISTS
не є стандартним; різні платформи можуть підтримувати його різним синтаксисом або взагалі не підтримувати його. У PostgreSQL синтаксис є
DROP TABLE IF EXISTS table_name;
Перший видасть помилку, якщо таблиці не існує, або якщо від неї залежать інші об'єкти бази даних. Найчастіше інші об’єкти бази даних будуть посиланнями іноземних ключів, але можуть бути й інші. (Перегляди, наприклад.) Друга не призведе до помилки, якщо таблиця не існує, але вона все одно видасть помилку, якщо від неї залежать інші об'єкти бази даних.
Щоб скинути таблицю та всі інші об'єкти, які залежать від неї, використовуйте один із них.
DROP TABLE table_name CASCADE;
DROP TABLE IF EXISTS table_name CASCADE;
Використовуйте CASCADE з великою обережністю.