DB2给表批量赋权

使用DB2的for循环语句给表批量赋权,同理,稍加修改可作为其他批量操作。

值得注意的是: grant语句无法直接执行,需要使用execute immediate才能执行。

授权操作表的所有权限:grant control on 表 to 用户

begin 
declare gran_sql varchar(200);
   for t as 
       select TABSCHEMA||'.'||TABNAME TABNAME from SYSCAT.TABLES  where TABSCHEMA= 'DB2INST1'
   do 
       set gran_sql='GRANT select on '||t.TABNAME||' to QSS06,QSS07';
       execute immediate gran_sql;
   end for;
end;

posted on 2020-07-02 15:06  Simple-Sir  阅读(1074)  评论(0编辑  收藏  举报

导航