You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么Redshift中执行RAISE NOTICE语句会出现语法错误

报错原因说明
  • 根本原因:RAISE 系列语句(包含RAISE NOTICE、RAISE INFO等写法)是PL/pgSQL过程语言的专属语法,不属于标准SQL范畴。Amazon Redshift仅支持在存储过程、自定义UDF的内部代码块中调用该语句,不允许直接作为独立SQL命令执行,该报错和权限、使用的客户端工具、语句大小写均无关联。
  • 功能验证方法:你可以通过创建测试存储过程验证RAISE NOTICE的可用场景:
-- 创建测试存储过程
CREATE OR REPLACE PROCEDURE test_raise_notice()
LANGUAGE plpgsql
AS $$
BEGIN
  RAISE NOTICE 'hello world';
END;
$$;

-- 调用存储过程即可看到对应通知输出
CALL test_raise_notice();
  • 普通场景替代方案:如果只是需要做简单的信息输出,无需使用过程语法的场景,直接用SELECT语句即可实现同等效果:
SELECT 'hello world' AS notice_output;

内容的提问来源于stack exchange,提问作者AriasFromDeep3rd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 05:24:02