trigger

[复制链接]
查看11 | 回复4 | 2013-2-25 14:51:24 | 显示全部楼层 |阅读模式
请问trigger能否触发修改另一个用户的数据表?
回复

使用道具 举报

千问 | 2013-2-25 14:51:24 | 显示全部楼层
可以,可是得看你的用户有没有修改那个特定表的权限
回复

使用道具 举报

千问 | 2013-2-25 14:51:24 | 显示全部楼层
我对该用户有权限,
在 sc 和 dayend两个用户下有table domain( char(5) , char(5) ),
1.create or replace trigger sc_domain
after insert on domain
for each row
begin
insert into domain values('1234' ,'1234' );
end;
成功
2。
create or replace trigger sc_domain
after insert on domain
for each row
begin
insert into dayend.domain values('1234' ,'1234' );
end;
show errors :2/1PLS-00201: identifier 'DOMAIN' must be declared

2/1PL/SQL: SQL Statement ignored
3. sc 用户登陆 sqlplus>insert into dayend.domain values('1234' , '1234' )
成功!
回复

使用道具 举报

千问 | 2013-2-25 14:51:24 | 显示全部楼层
如果你在执行
3. sc 用户登陆 sqlplus>insert into dayend.domain values('1234' , '1234' )
成功!
之前运行set role none;之后如果再运行你的3,如果正常,那么在trigger中也就可以正常了。
你需要:
connect to dayend and grant insert on domain to sc;
回复

使用道具 举报

千问 | 2013-2-25 14:51:24 | 显示全部楼层
问题解决,感谢!
有无trigger一个用户any table有改变,
另一个用户将跟随着改变?
两个用户所有表一样。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行