oracle学习笔记(二十一):访问其它用户下的对象
1、以 sysdba 身份登录 oracle,解锁 hr 用户,并设置密码为 lion:
2、 以 hr 用户登录 oracle:
3、我们知道,前面以 scott 登录 oracle 时,scott 查询自己用户下的表,用语句:select * from emp; 即可;
但是以 hr 登录 oracle 后,用 hr 查询 scott 用户下的表,要指明所查询对象所属的用户,用如下语句:
select * from scott.emp;
但是报错了,如上所示;原因是:默认情况下,每个用户只能查询自己空间下的对象,不能查询其他用户的对象;
可以通过 sysdba,授予 hr 查询其他所有用户空间下 对象的权限:grant select any table to hr;
此时再以 hr 查询 scott 用户下的对象就可以了:select * from scott.emp;
4、hr 用户查看自己所具有的权限:select * from user_sys_privs;
5、以 sysdba 身份,撤销 hr 用户查询所有用户空间下对象的权限:revoke select any table from hr;