删除表(如果存在于PostgreSQL数据库中)

Mee*_*eem 12 postgresql

如果它存在于PostgreSQL的当前工作数据库中,我试图删除表.我正在尝试以下查询.

示例:

var1 := 'IF EXISTS (select * from INFORMATION_SCHEMA.TABLES WHERE name = ''Table_'|| Suffix ||''') then
      DROP TABLE Table_'||Suffix||'';

execute var1;
Run Code Online (Sandbox Code Playgroud)

但是接近错误IF.

har*_*mic 28

execute执行SQL语句,而不是PL/pgSQL命令.IF语句是PL/pgSQL构造.

无论如何你都可以使用

DROP TABLE IF EXISTS ...
Run Code Online (Sandbox Code Playgroud)

(参见DROP手册页).