触发器在操作中未触发
检查您的触发器是否处于禁用状态。如果是,请启用触发器。
ALTER TABLE表名启用触发器tr_name
Im使用Oracle – codepoetly
“ALTER TABLE fees ENABLE TRIGGER msg;”给出错误信息“ORA 00905 missing keyword” – codepoetly
SQL> alter table fees enable trigger msg; alter table fees enable触发msg * 错误在第1行: ORA-00905:缺少关键字 – codepoetly
如果您正在使用甲骨文,你可以尝试使触发
ALTER TABLE tblName ENABLE TRIGGER trgName --WRONG
更正语法(注释感谢):
ALTER TRIGGER trg_name ENABLE;
检查您的触发是否存在,有效/无效等:
SELECT * from dba_triggers WHERE LOWER(trigger_name) LIKE '%salupdate%';
SELECT * FROM dba_objects WHERE LOWER(object_name) LIKE '%salupdate%';
使用在触发DBMS_OUTPUT.PUT_LINE未在输出端看到,后面的用户解决了这个问题:
SET SERVEROUTPUT ON;
“ALTER TABLE fees ENABLE TRIGGER msg;”给出错误消息“ORA 00905缺少关键字” - – codepoetly
即时通讯使用oracle – codepoetly
SQL> alter table fees enable trigger msg; alter table fees enable trigger msg * 错误在第1行: ORA-00905:缺少关键字 – codepoetly
检查触发是否有效并启用:
SELECT * FROM User_Objects t WHERE t.OBJECT_TYPE = 'TRIGGER';
SELECT t.* FROM User_Triggers t;
我运行了这些命令,它没有返回任何行。所以它无效。我现在如何使其有效? – codepoetly
第二个查询返回所有触发器和我缺少的触发器。现在我该怎么做? – codepoetly
如果它是无效的,你应该编辑触发器并重新编译它,也许它有语法错误或这个触发器相关的其他对象是无效的。 – amirdavod
[编辑]你的问题,并添加触发器代码和你期望触发触发器的SQL。并告诉我们你正在使用哪个DBMS(Postgres,Oracle,...) –
[我如何问一个**好**问题?](http://*.com/help/how-to-ask) –
我使用Oracle – codepoetly