我试图删除表,如果它存在于PostgreSQL的当前工作数据库中。我正在尝试以下查询。
示例:
var1 := 'IF EXISTS (select * from INFORMATION_SCHEMA.TABLES WHERE name = ''Table_'|| Suffix ||''') then
DROP TABLE Table_'||Suffix||'';
execute var1;
但在IF
附近收到错误。
答案 0 :(得分:22)
execute
执行SQL语句,而不是PL / pgSQL命令。 IF语句是PL / pgSQL构造。
无论如何,你可以使用
DROP TABLE IF EXISTS ...