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

Oracle执行动态ALTER TRIGGER报错ORA-00940:无效命令求助

问题原因及解决方法

问题出在动态SQL的字符串拼接缺少空格,导致生成的SQL语句语法不合法。

你的代码拼接后实际生成的SQL是:

ALTER TRIGGERarticle_comment_auditENABLE

Oracle无法识别这种连在一起的关键字和对象名,因此抛出ORA-00940错误。

修复方法

在拼接字符串时,给关键字和变量之间添加空格:

declare 
v_trg_name varchar2(25) := 'article_comment_audit';
begin 
execute immediate 'ALTER TRIGGER ' || v_trg_name || ' ENABLE';
end;

注意ALTER TRIGGER末尾加空格,ENABLE开头加空格,这样生成的SQL就会是合法的格式:

ALTER TRIGGER article_comment_audit ENABLE

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 16:25:21