一、创建用户
-- 创建用户
create user USERB identified by "密码" default tablespace 表空间;
--授予登录权限
grant connect to estate_user;
--授予查询任何表权限
grant select any table to userName;
二、授予查看某用户下的所有表或者某个表或视图权限
--在USERA下查询所有表,组成sql
select 'grant select on USERA.' || table_name || ' to USERB;' from user_tables;
--在USERA中执行 grant的sql
grant select on USERA.tableA to USERB;
登录USERB查询表,需要带原创建用户的用户名:例如:
select * from USERA.TABLEA
三、如果不想带原用户名称需要建立同义词
--首先需要sys用户授权USER_B创建同义词权限:
GRANT CREATE SYNONYM TO USERB;
--创建同义词语法:
create synonym USERB.TABLENAME1 for USERA.TABLENAME1 ;
--批量创建同义词,在USERA中执行:
select 'grant select on USERA.' || table_name || ' to USERB;' from user_tables;
--在USERB中执行grant语句。
建完同义词后,pl/sql developer查看表,依然看不到所有表,但是好在能USERB.能点出来所有表:
查看用户下的同义词
SELECT * FROM DBA_SYNONYMS where OWNER = 'USERB';
删除同义词
drop synonym sysn_name;
四、删除用户:
drop user htqryall cascade;