如果在同一张表中我想同时限制不能修改2个字段应该怎么写啊?
比如
create or replace trigger tr_test
before update of username,date on t_user
referencing old o new n for each row
declarebegin
end;begin 里面该怎么写呢?
总不会限制2个字段需要写2个触发器吧,那样太麻烦了
比如
create or replace trigger tr_test
before update of username,date on t_user
referencing old o new n for each row
declarebegin
end;begin 里面该怎么写呢?
总不会限制2个字段需要写2个触发器吧,那样太麻烦了
:n.date := :o.date;
[/Quote]不是啊,我想要提示信息啊··,比如说raise_application_error(-20001,'用户名不能修改')
比如用户如果只想修改用户名我就给他提示用户名不能修改,
如果想修改日期我就能正确的提示出 日期不能修改怎么样才能正确用if语句执行这两条语句呢raise_application_error(-20001,'用户名不能修改')
raise_application_error(-20002,'注册日期不能修改');
create or replace trigger tr_test
before update on t_user
for each row
declarebegin
dbms_output.put_line(:new.username);
dbms_output.put_line(:new.userage);
if :new.username != :old.username then
raise_application_error(-20001,'用户名不能修改');
end if;
if :new.userage != :old.userage then
raise_application_error(-20002,'用户年龄不能修改');
end if;
end;