Oracle一個用戶如何訪問其它用戶的表應(yīng)用指南

本文將詳細(xì)介紹oracle一個用戶如何訪問其它用戶的表,需要的朋友可以參考下

假如Oracle中有兩個用戶A和B,那么如果A要訪問B擁有的表,語句應(yīng)該是:
代碼如下:
SELECT * FROM B.TABLENAME。

我要問的是,能否通過修改Oracle的設(shè)置,將A訪問B擁有表的語也變?yōu)楦鶥用戶登錄一樣的語句:SELECT * FROM TABLENAME?
代碼如下:
create synonym tablename for B.TABLENAME;

除了一樓的創(chuàng)建同義詞外,還要授予A用戶訪問改同意詞的權(quán)限.
代碼如下:
drop synonym tablename ;

1 可以使用查詢生成sql語句,比如
代碼如下:
select ‘CREATE SYNONYM ‘||table_name||’ FOR A.’||table_name from dba_tables where owner = ‘A’

然后執(zhí)行這些sql語句。 或者寫存儲過程實現(xiàn).
2 select any table 權(quán)限可以允許訪問所有表

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊7 分享