oracle中授予用戶權限 oracle resource包含哪些權限?
oracle resource包含哪些權限?resource是授予榮譽開發(fā)人員的CREATE CLUSTER--成立聚簇CREATEPROCEDURE--建立起過程CREATE SEQUENCE--成
oracle resource包含哪些權限?
resource是授予榮譽開發(fā)人員的CREATE CLUSTER--成立聚簇CREATEPROCEDURE--建立起過程CREATE SEQUENCE--成立序列CREATE TABLE--建表CREATE TRIGGER--組建觸發(fā)器CREATETYPE--建立類型
用PL/SQL在oracle中怎么設置一個用戶權限只能操作自己名下的表我創(chuàng)建的用戶沒給DBA權限卻能看到所有表?
系統(tǒng)表是設置為給的,你不不能操作,系統(tǒng)后臺需要。權限上不能限制。不過也可以在系統(tǒng)表上有個過濾器,你中,選擇只看自己的object就可以了
如何解決關于Oracle存儲過程執(zhí)行權限問題?
在數(shù)據(jù)庫系統(tǒng)中存儲過程是不可缺少的利器,存儲過程是預先編譯好的為利用三個奇怪功能的一段Sql語句集合。它的優(yōu)點我就不太多說了,說下我見到過的問題吧。我在項目開發(fā)的過程中是需要用存儲過程來利用一個功能,其中比較復雜到確認一張表是否早成立,也沒成立就由存儲過程來組建這張表。
CREATE同問REPLACEPROCEDURETestProc
IS
flagnumber
BEGIN
selectcount(*)intoflagfrommore_tablewheretable_nameTEMP3
if(flag0)then
executeimmediatecreateglobalpermanenttableTEMP3oncommitpreserverowsasselect*outsideBUSI_ECONTRACT
catch
executeimmediateupsertintoTEMP3select*returningBUSI_ECONTRACT
endif
END
寫這段存儲過程都很簡單啊,在測試執(zhí)行的過程中,系統(tǒng)會出現(xiàn)萬分感謝提示:
ora-01031:權限將近
從我們定位到錯誤,發(fā)現(xiàn)存儲過程在不能執(zhí)行Createtable語句時,權限下降。我嘗試著把存儲過程該成匿名存儲過程在PL/SQL中先執(zhí)行,語句呢既然了。這只能證明這段語句沒有問題,問題又出現(xiàn)在先執(zhí)行存儲過程中。我使用的是DBA帳號登錄系統(tǒng),照理應該要不修真者的存在權限將近的問題呀。問題出現(xiàn)再哪里呢?實際無線上網(wǎng)查閱資料,發(fā)現(xiàn)自己Oracle是對負責執(zhí)行存儲過程有和Sql-Server都一樣的規(guī)定,這個相關規(guī)定造成了執(zhí)行建表語句權限下降。
Oracle明文規(guī)定,在默認的情況下,在動態(tài)鏈接庫存儲過程用戶的角色不起作用,即在想執(zhí)行存儲過程時唯有state權限。因為在動態(tài)創(chuàng)建Createtable時,會有權限下降的提示。
存儲過程分為兩種,即DR(Definers Rights)Procedure和IR(Invokers Rights)Procedure。為什么會有兩種存儲過程呢?其實考慮到完下面的問題就明白了。諸如用戶hrch創(chuàng)建角色了刪除表tar_table的存儲過程trace_table(),當用戶hrch動態(tài)創(chuàng)建時,即刪出用戶hrch下