本文將詳細(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)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載。
THE END