大家下,我在sys下创建了一个student表,现在想在这个表上创建一个触发器,实现的功能是:如果删除student上的id=11的记录,则弹出'不允许删除!'的提示。
代码如下:
create or replace trigger student_delete
after delete on student
for each row
begin
if old.student.id=11 then
raise_application_error(-20000,'不允许删除!');
end if;
end;
代码如下:
create or replace trigger student_delete
after delete on student
for each row
begin
if old.student.id=11 then
raise_application_error(-20000,'不允许删除!');
end if;
end;
grant database administrator trigger to xx;
grant database administrator trigger to zhenjiang
提示以下错误信息:
SQL> conn sys
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
Connected as SYSSQL> grant database administrator trigger to zhenjiang;grant database administrator trigger to zhenjiangORA-00990: 权限缺失或无效
不好意思哈 哦搞错了 ADMINISTER DATABASE TRIGGER
授权成功后,zhenjiang用户还是不能在sys用户的表上建立触发器,我就在zhenjiang下建立一个表并在上面再建立触发器,可都是返回以下错误
ORA-04089: 无法对 SYS 拥有的对象创建触发器