问题一:ora 04098 触发器无效未通过验证
create trigger v_emp_trigger
instead of insert
on v_emp
for each row
declare
v_count number;
begin
select count(*) into v_count from emp where ename= :new.v_ename;
if v_count=0 then
insert into emp (ename,deptno,sal) values( :new.v_ename, :new.v_deptno, :new.v_sal);
end if;
select count(*) into v_count from dept where deptno= :new.v_deptno;
if v_count=0 then
insert into dempt (deptno,dname) values( :new.v_deptno, :new.v_dname);
end if;
end;为什么我写的触发器老是要报这个错呢 我都不知道该怎么检查 我看不出来问题啊问题二
记录用户登录和退出的触发器,dba身份创建一个表用来记录有关事件的信息,如用户名称,使用的客户机IP地址,登录时间,退出时间。
create table log_event(
user_name varchar2(10),
address varchar2(20),
logon_date timestamp,
logoff_date timestamp
) create trigger log_event_trigger
after logon on database
begin
insert into log_event (user_name,address,logon_date) values(ora_login_user,ora_client_ip_address,systimestamp) ;
end--ora 04098 触发器无效未通过验证
create trigger log_event_trigger2
before logoff on database
begin
insert into log_event (user_name,address,logoff_date) values(ora_login_user,ora_client_ip_address,systimestamp) ;
end--ora 04098 触发器无效未通过验证记录不下来登录和退出的记录
问题三:select trigger_name,description,trigger_body from all_triggers where table_name='emp'
这个表上明明有个触发器,但是查询之后结果为空,什么都查不到呢
大家帮忙看看啊,谢谢
create trigger v_emp_trigger
instead of insert
on v_emp
for each row
declare
v_count number;
begin
select count(*) into v_count from emp where ename= :new.v_ename;
if v_count=0 then
insert into emp (ename,deptno,sal) values( :new.v_ename, :new.v_deptno, :new.v_sal);
end if;
select count(*) into v_count from dept where deptno= :new.v_deptno;
if v_count=0 then
insert into dempt (deptno,dname) values( :new.v_deptno, :new.v_dname);
end if;
end;为什么我写的触发器老是要报这个错呢 我都不知道该怎么检查 我看不出来问题啊问题二
记录用户登录和退出的触发器,dba身份创建一个表用来记录有关事件的信息,如用户名称,使用的客户机IP地址,登录时间,退出时间。
create table log_event(
user_name varchar2(10),
address varchar2(20),
logon_date timestamp,
logoff_date timestamp
) create trigger log_event_trigger
after logon on database
begin
insert into log_event (user_name,address,logon_date) values(ora_login_user,ora_client_ip_address,systimestamp) ;
end--ora 04098 触发器无效未通过验证
create trigger log_event_trigger2
before logoff on database
begin
insert into log_event (user_name,address,logoff_date) values(ora_login_user,ora_client_ip_address,systimestamp) ;
end--ora 04098 触发器无效未通过验证记录不下来登录和退出的记录
问题三:select trigger_name,description,trigger_body from all_triggers where table_name='emp'
这个表上明明有个触发器,但是查询之后结果为空,什么都查不到呢
大家帮忙看看啊,谢谢
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货