1. 程式人生 > 資料庫 >Oracle報儲存過程中呼叫DBLink同義詞出現錯誤:PLS-00201: 必須宣告識別符號

Oracle報儲存過程中呼叫DBLink同義詞出現錯誤:PLS-00201: 必須宣告識別符號

前幾天編寫一個儲存過程,需要訪問遠端資料庫的欄位,於是建立一個dbLink並建了同義詞:

CREATE PUBLIC DATABASE LINK orcl@dbc CONNECT TO orcl IDENTIFIED BY orcl USING 'orcl';
CREATE SYNONYM mtb FOR mytable@orcl@dbc;

這裡之所以用orcl@bdc為dblink的名稱是為了設定global_names=true。

然後新建一個儲存過程呼叫該同義詞:

 v_result mtb.sid%type; 

呼叫後發現提示:錯誤:PLS-00201: 必須宣告識別符號 'MTB.SID';

經過多番查詢發現確實是因為身份原因,這裡需要注意一定要在被訪問的資料庫中賦予許可權,具體程式碼如下:

grant select on mytable to orcl;--orcl為使用者名稱

然後就編譯通過了。

總結

以上所述是小編給大家介紹的Oracle報儲存過程中呼叫DBLink同義詞出現錯誤:PLS-00201: 必須宣告識別符號,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!