【許可權】儲存過程執行時,報ORA-01031許可權不足

mikeliuy發表於2013-05-15

使用者自己建立的儲存過程,儲存過程中也是處理自己schema的物件。
儲存過程中的每條SQL都行執行成功,但是執行儲存過程就報出 下面的錯誤:

ORA-00942: table or view does not exist
......
ORA-01031: insufficient privileges

根據第一行的錯誤,說明儲存過程中的SQL執行失敗,沒有建立出臨時表。可是已經給使用者授予了RESOURCE角色啦!並且單執行建立表的SQL語句是成功的。
後來查了查資料發現,執行內部過程時,它的許可權是無法從角色中取得的,也就是說角色中的相應許可權對於內部過程失效。

解決:
執行下面指令後,過程執行正常。

SQL> grant CREATE TABLE to [username];


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26812308/viewspace-761165/,如需轉載,請註明出處,否則將追究法律責任。

相關文章