[英]Oracle Sql trigger not working
我有一个非常简单的触发器,当在用户表中插入新行时,它会打印出用户名和日期。 但是在成功编译之后,触发器没有被触发(dbms窗口中没有输出)。 因此,我简化了代码,直到得到:
CREATE OR REPLACE TRIGGER logger
AFTER INSERT ON USERS
BEGIN
DBMS_OUTPUT.PUT_LINE('User added with name:');
END;
如果我运行SQL工作表中的代码(从BEGIN到END),则可以看到输出,但是在尝试使用触发器时看不到输出。 问题出在哪儿?
有两种选择,一种是触发器不触发,另一种是触发器,但是您没有看到输出。
SET SERVEROUTPUT ON
。 如果那不能解决问题,请确保触发触发器。 尝试创建一个简单的表:
创建表日志表(msg VARCHAR2(30 CHAR));
接下来,将其添加到触发器中
INSERT INTO logtable( msg ) VALUES ( 'trigger fired' );
然后,再次尝试插入。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.