当我执行PERFORM pg_notify('channel', 'payload');
时,我收到以下错误:
ERROR: syntax error at or near "PERFORM"
LINE 1: PERFORM pg_notify('channel', 'payload');
^
我做错了什么?
SELECT
对应物有效,但我正在寻找无结果等效物。我正在使用psql (9.5.3, server 9.5.0)
。
答案 0 :(得分:3)
此处的问题依赖于PERFORM
无法在提示中直接执行的事实。正如documentation所说:
有时评估表达式或SELECT查询很有用 丢弃结果,例如在调用具有的函数时 副作用但没有有用的结果值。要在 PL / pgSQL 中执行此操作,请使用 PERFORM声明:
这有点棘手但PERFORM
只能用于 PL / pgSQL 上下文(函数,存储过程和东西)。我试图直接在不支持的提示中执行它。