利用select语句自动生成执行权限语句
•发布于   •作者 帅类  •437 次浏览  •来自 博客

今天在公司工作的时候遇到了这样一个问题

对oracle数据库进行赋予权限操作的时候只能进行单表操作。

首先创建一个用户的方式为

grant create session to s_jack //创建一个用户jack

如何获取到当前用户下 的所有的表的表名

select * from dbs_objects where OBJECT_TYPE='TABLE' and  owner='JACK';

如 grant select,insert,delete,update on tableName to userName;//该语句只能每次执行一个表的权限赋值。

为了省去人工可以用以下的语句自动生成

select 'grant select,insert,delete,update on '||owner||'.'||object_name||' to S_JACK;'  from dbs_objects where object_type='TABLE' and owner='JACK';


查询JACK下所有的存储语句

select 'grant excute on '||owner||'.'||object_name||' to S_JACK;' from dbs_objects where object_type='TABLE' and owner='JACK';

0 回复
回到顶部

©2017 Powered by 三十三行伪代码
皖ICP备17005175号-3