创建新用户并授予查询用户表权限

将user1的表权限赋予user2(使用dba权限用户操作)

一、创建用户(使用dba权限用户操作)

CREATE USER username IDENTIFIED BY passwd;

将username改为创建的用户名,passwd是密码。

二、赋予用户权限(使用dba权限用户操作)

赋予用户连接数据库权限;

GRANT CREATE SESSION TO username;

三、赋予用户查询表权限(使用dba权限用户操作)

1.查询所有表的权限

GRANT SELECT ANY TABLE TO username;

2.赋予用户查询user1用户的所有表的权限

select 'Grant all on '||table_name||' to username ;' from all_tables where owner = upper(user1);

需将username改为自己的用户;

3.赋予用户查询特定表的权限

GRANT SELECT ON user1.table_name TO username;

这里的table_name需改为表名称;

四、查询表(使用username用户操作)

现在已经可以在username用户下查询表了,使用方法为user1.table_name

select * from user1.table_name;

如果想直接通过表名称查询表,需要给用户赋予同义词权限;

添加同义词权限(使用dba权限用户操作)

赋予username用户同义词权限

grant create synonym to username;

五、创建同义词(使用username用户操作)

1.为指定表创建同义词

create or replace synonym table_name_A for user1.table_name_A;

2.添加所有表的同义词(使用dba权限用户操作)

批量生成创建user1用户下表的同义词,执行语句:

select 'create or replace synonym user1.'||object_name||' for '||owner||'.'||object_name||';' from dba_objects where owner in ('user1') and object_type='TABLE';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值