What is this about? Many DDL statements in PostgreSQL support modified IF EXISTS / IF NOT EXISTS. For example: test=# create table if not exists mytable(); CREATE TABLE test=# drop table if exists mytable; DROP TABLE I recommend using `IF EXISTS` / `IF NOT EXISTS` in DDL only when necessary. Here are three examples that demonstrate how the overuse of these words may lead to negative consequences.