oracle存儲過程權限問題

  今天從其他系統拷貝了一個存儲過程到一個新的用戶(user1)下面,但在編譯的時候發現定義的一個遊標訪問dba_tables的地方報錯:“表不存在”。覺得很奇怪,因爲這個表是存在的,在plsql中新建一個窗口:然後輸入“select * from dba_tables”,執行沒有任何問題!再看一下當前用戶的角色,裏面包含了DBA權限,那爲什麼會報這個錯呢?後來嘗試用sys用戶執行了以下語句:“grant select on dba_tables to user1”,執行完畢後,之前的存儲過程編譯通過了,看來在存儲過程中執行某個語句和單獨執行還是有點差異的,其中的具體細節還未具體研究,待今後研究。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章