同义词与授权访问表

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/magi1201/article/details/74905564

oracle中访问别的用户下面的表时,首先需要别的用户的授权,这样便可以通过user.table 的方式进行访问,如果别的用户再在授权的基础上创建同义词,那么便可以通过同义词名称直接访问了。下面以oracle 中scott用户下的emp表为示例,简述下同义词访问和授权访问的操作。


-- 登录 system/manager as sysdba 用户
-- 创建用户
create user zhangqi identified by zhangqi947; 
-- 赋权
grant resource, connect to zhangqi;

-- 登录scott用户
-- 将emp表的select、insert、update和delete权限授权给用户zhangqi
grant select,insert,update,delete on emp to zhangqi;
-- 用zhangqi用户登录,可以通过下面方式访问emp表
select * from scott.emp;

-- 登录scott表
create public synonym emp for scott.emp;
-- ORA-01031权限不足

-- 切换system
grant create any synonym to zhangqi;  

-- 切换zhangqi
create synonym emp for scott.emp; 

-- 通过同义词访问
select * from emp;

-- 通过授权直接访问
select * from scott.emp;

以上操作亲试可用,对同义词理解尚浅,如果描述有误,请批评斧正。谢谢。

猜你喜欢

转载自blog.csdn.net/magi1201/article/details/74905564