/* 创建序列 */
create or replace sequence seq_dic_negative_id
increment by 1 --每次增加1
start with 1353 --从1开始计数
nomaxvalue --不设置最大值
nocycle --一直累加 不循环
nocache --不设置缓存 设置缓存 容易跳号 不连贯/* 创建触发器 */
create or replace trigger chufaqi
before insert on dic_negative
for each row
begin
select seq_dic_negative_id.nextval into :new.id from dual;
end chufaqi
insert into dic_negative (type,rule,re) values(4002,'杀人','');当执行insert 语句的时候就会出现 ORA-04098 触发器无效且未通过重新验证问题
大虾 帮我找找原因 那地方写错了 谢谢系诶系诶下。
create or replace sequence seq_dic_negative_id
increment by 1 --每次增加1
start with 1353 --从1开始计数
nomaxvalue --不设置最大值
nocycle --一直累加 不循环
nocache --不设置缓存 设置缓存 容易跳号 不连贯/* 创建触发器 */
create or replace trigger chufaqi
before insert on dic_negative
for each row
begin
select seq_dic_negative_id.nextval into :new.id from dual;
end chufaqi
insert into dic_negative (type,rule,re) values(4002,'杀人','');当执行insert 语句的时候就会出现 ORA-04098 触发器无效且未通过重新验证问题
大虾 帮我找找原因 那地方写错了 谢谢系诶系诶下。
SQL>alter trigger lob_trigger compile;
SQL>show errors;
--检查触发器是否有效
SQL> select trigger_name,trigger_type,status
2 from user_triggers
3 /
TRIGGER_NAME TRIGGER_TYPE STATUS
------------------------------ ---------------- --------
TRI_PRICE_CHANGE BEFORE EACH ROW ENABLED
TRI_INSERT_SALES AFTER EACH ROW ENABLED
--若无效:
alter trigger trigger_name enabled
insert into dic_negative (id,type,rule,re) values(50,4002,'杀人','');
你再试试。