【发布时间】:2019-04-05 10:54:08
【问题描述】:
代码:
create or replace trigger "ARTICULOSCAT_INSERT" AFTER insert on
"ARTICULOSCAT" for each row BEGIN INSERT INTO
BITACORA (USUARIO,FECHA,TABLA_AFECTADA,ACCION_EFECTUADA,COLUMNAS,VALORES_ANT,VALORES_NUEVOS)
VALUES(USER,SYSDATE,'ArticulosCat','Insert','I_ID_ARTICULO,V_DESCRIPCION_100,I_ID_UM,F_PRECIO,I_ID_IMPUESO',
CONCAT('I_ID_ARTICULO: ',:OLD.I_ID_ARTICULO,',','V_DESCRIPCION_100: ',:OLD.V_DESCRIPCION_100,',','I_ID_UM: ',:OLD.I_ID_UM,',','F_PRECIO: ',:OLD.F_PRECIO,',','I_ID_IMPUESTO: ',:OLD.I_ID_IMPUESTO),
CONCAT('I_ID_ARTICULO: ',:NEW.I_ID_ARTICULO,',','V_DESCRIPCION_100: ',:NEW.V_DESCRIPCION_100,',','I_ID_UM: ',:NEW.I_ID_UM,',','F_PRECIO: ',:NEW.F_PRECIO,',','I_ID_IMPUESTO: ',:NEW.I_ID_IMPUESTO)
END;
错误:
编译失败,第 3 行 (02:17:30) 与关联的行号 编译错误与第一个 BEGIN 语句有关。这 只影响数据库触发器的编译。 PL/SQL:ORA-00909: 参数数量无效编译失败,第 2 行 (02:17:30) 与编译错误相关的行号是相对于 第一个 BEGIN 语句。这只影响数据库的编译 触发器。 PL/SQL:SQL 语句被忽略编译失败,第 4 行 (02:17:30) 与编译错误相关的行号是 相对于第一个 BEGIN 语句。这只会影响 数据库触发器的编译。 PLS-00103:遇到符号 预期以下情况之一时的“文件结尾”:(开始大小写 为 goto 声明结束异常退出 if loop mod null pragma raise 使用时返回选择更新
【问题讨论】:
-
这是一个拼写错误 - 您缺少值语句的右括号。可以看到最后的concat结尾括号,后面不跟另一个关闭
values(