La sintaxis SQL estándar es
DROP TABLE table_name;
IF EXISTS
no es estándar; diferentes plataformas pueden admitirlo con una sintaxis diferente, o no admitirlo en absoluto. En PostgreSQL, la sintaxis es
DROP TABLE IF EXISTS table_name;
El primero arrojará un error si la tabla no existe, o si otros objetos de la base de datos dependen de ella. Muy a menudo, los otros objetos de la base de datos serán referencias de claves foráneas, pero también puede haber otros. (Vistas, por ejemplo). El segundo no arrojará un error si la tabla no existe, pero aún arrojará un error si otros objetos de la base de datos dependen de ella.
Para soltar una tabla y todos los demás objetos que dependen de ella, use uno de estos.
DROP TABLE table_name CASCADE;
DROP TABLE IF EXISTS table_name CASCADE;
Use CASCADE con mucho cuidado.