我有一个非常简单的查询:
DROP TYPE IF EXISTS abc;
在我的本地机器上运行时,一切都很好。在我的生产机器上运行时,它返回:
ERROR: syntax error at or near "EXISTS" at character 14
我尝试手动输入而不是复制以确保某处没有隐藏的字符,但我无法弄清楚这是如何在一个地方给出错误而不是另一个地方。
答案 0 :(得分:3)
检查您正在使用的版本,包括本地版本和生产版本。
if exists
子句仅添加到8.2中的drop type
。
并且,在有人质疑它为什么抱怨exists
而不是if
之前,这是因为声明:
drop type if
到目前为止,完全有效,因为尝试删除if
类型。只有exists
之后才会使语法变坏。