日期:2014-05-17  浏览次数:21085 次

如何对同义词的授权进行删除?
建同义词
begin
  for cur in (select * from user_tables where table_name in 
 ('DM_MZB','DM_GJDQB','DM_PCSB','DM_ZWZCB','DM_SPQFDB','DM_QZZLB',
'DM_TWZYB','DM_BGJZZLB','DM_CJSYB','DM_HYZKB','DM_WHCDB','DM_ZZMMB','DM_QSGXB','DM_GBK'))
  loop
  execute immediate 'create or replace synonym GACRJ_ZZTB.'||cur.table_name||' for admin.'||cur.table_name;
  execute immediate 'grant select,update,insert,delete,index,references,alter on admin.'||cur.table_name||' to GACRJ_ZZTB';
  end loop;
end;
/

我建了一些同义词,现在想把其他授权删掉,只保留select的权限,通过语句怎么删?
是需要重新 建同义词,再重新授权吗?

------解决方案--------------------
我觉得删掉同义词,重新授权,再重建算了,也不算很麻烦..
不然怕偶尔有个同义词失效啥的