免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3242 | 回复: 5
打印 上一主题 下一主题

请教触发器创建失败的问题. [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-14 11:16 |只看该作者 |倒序浏览
各位DX,我这边创建以下的触发器:
我用System帐户DBA的权限登陆的
创建触发器,当用户对test表执行DML语句时,将相关信息记录到日志表
--创建测试表
CREATE TABLE test
(
t_id   NUMBER(4),
t_name VARCHAR2(20),
t_age NUMBER(2),
t_sex CHAR
);
--创建记录测试表
CREATE TABLE test_log
(
l_user   VARCHAR2(15),
l_type   VARCHAR2(15),
l_date   VARCHAR2(30)
);
--创建触发器
CREATE OR REPLACE TRIGGER test_trigger
AFTER DELETE OR INSERT OR UPDATE ON test
DECLARE
v_type test_log.l_type%TYPE;
BEGIN
IF INSERTING THEN --INSERT触发
   v_type := 'INSERT';
   DBMS_OUTPUT.PUT_LINE('记录已经成功插入,并已记录到日志');
ELSIF UPDATING THEN --UPDATE触发
   v_type := 'UPDATE';
   DBMS_OUTPUT.PUT_LINE('记录已经成功更新,并已记录到日志');
ELSIF DELETING THEN
   v_type := 'DELETE';
   DBMS_OUTPUT.PUT_LINE('记录已经成功删除,并已记录到日志');
END IF;
INSERT INTO test_log VALUES(user,v_type,
        TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss'));
END;
/

就是上面的这个触发器创建好之后,提示如下的错误信息:

ERROR 位于第 1 行:
ORA-04089: 无法对 SYS 所有的对象创建触发器??

请问上面的错误如何处理??

论坛徽章:
0
2 [报告]
发表于 2008-11-14 11:45 |只看该作者

回复 #1 ie_e 的帖子

都没有哪个高手帮我看下 吗?哎

论坛徽章:
0
3 [报告]
发表于 2008-11-14 13:01 |只看该作者
你用普通用户测试看看

论坛徽章:
1
丑牛
日期:2014-08-07 17:07:05
4 [报告]
发表于 2008-11-14 13:17 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
5 [报告]
发表于 2008-11-14 14:19 |只看该作者
你无法操作sys的对象

论坛徽章:
0
6 [报告]
发表于 2008-11-14 14:45 |只看该作者

用普通帐号好象也有问题,我再测试下,谢谢大家

用普通帐号好象也有问题,我再测试下,谢谢大家
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP