問題:使用scott登錄Oracle以後,創建視圖,提示“權限不夠”,怎麼解決?
回答:
這是因為scott這個帳戶目前沒有創建視圖的權限。解決方法為:
首先使用system帳戶進行登錄,其中“tigertiger”為安裝Oracle時所指定的密碼(可修改):
sqlplus system/tigertiger
然後執行:
grant create any view to scott
提示:授權成功。
執行:
exit
退出當前system帳戶。
再使用sqlplus登錄就可以創建視圖了,如:
sqlplus scott/tigert
下面創建一個最簡單視圖:
create or replace view v1
as
select * from t1;
有時候上面的方法還是無法解決問題,就使用下面的方法:
--創建視圖權限,一般網上找都是說的這句,但是光有這句還是無法創建
grant create view to B;
--授予查詢權限
grant select any table to B;
--授予權限
grant select any dictionary to B;
附錄:如果以上方法不能解決您的問題,可以嘗試以下方法。 反正我的問題是解決了,記錄下來。害我找大半天;
描述:
同一個數據庫:DB1
兩個自定義用戶:分別為 USER1、USER2
在USER1創建視圖,其中試圖內包含USER2中的表。 提示“權限不足”
執行以下SQL,根據自己用戶不同需修改使用:
--為USER1授權 GRANT CREATE ANY TABLE TO USER1; GRANT SELECT ANY TABLE TO USER1; GRANT COMMENT ANY TABLE TO USER1; GRANT LOCK ANY TABLE TO USER1; GRANT SELECT ANY DICTIONARY TO USER1; --為USER2授權 GRANT CREATE ANY TABLE TO USER2; GRANT SELECT ANY TABLE TO USER2; GRANT COMMENT ANY TABLE TO USER2; GRANT LOCK ANY TABLE TO USER2; GRANT SELECT ANY DICTIONARY TO USER2;