Oracle 儲存過程許可權問題

2021-09-24 11:05:01 字數 279 閱讀 9737

今天在寫儲存過程時遇到乙個不大不小的問題,pl/sql報:表或者試圖不存在,但是問題關鍵是單獨執行sql 四沒有問題的,人也很無奈,經查閱資料得知,是dba許可權問題。

因為角色在函式、儲存過程、觸發器中都是失效的,也就是說,使用者從角色繼承過來的許可權,不能在函式、儲存過程、觸發器中使用。在函式、儲存過程、觸發器中,如果要訪問其他使用者的物件,需要顯式地給使用者授予訪問的許可權。

賦予許可權的語句 grant select any table to table,這裡的select 可以替換成為 insert,delete等

Oracle儲存過程許可權問題

儲存過程分成兩種許可權 1.定義者許可權 authid definer 2.呼叫者許可權 authid current user 預設的情況下使用的是定義者許可權。1。定義者許可權使用遇到的問題 當使用定義者許可權時候,不管是你自己去call,還是其他使用者去call,效果是一樣的,都是用你的許可權...

Oracle儲存過程執行許可權

預設情況下,在呼叫儲存過程使用者的角色是不起作用的,即在執行儲存過程時只有public許可權。所以如果被呼叫的儲存過程中如果有execute immediate create table.語句,將會引發ora 01031 insufficient privileges錯誤。儲存過程分為兩種,即dr ...

ORACLE 儲存過程 觸發器許可權問題

需要建立trigger,trigger名和已有表名相同,竟然沒有問題。編譯的時候發現sfism4使用者缺少表sfis1.c menu parameter t的許可權,查詢發現c update和c select角色已經有該錶許可權,且sfism4使用者也已經有這倆角色。查詢發現涉及到authid cu...