背景:現有乙個使用者,需新增乙個使用者
建立使用者
使用新使用者登入
出現報錯資訊:ora-
01045
:user system lacks create session privilege; logon denied
使用系統使用者登入後,用如下sql語句給出錯使用者賦許可權
grant create session to username;
(username是登入出錯的使用者名稱)
為新使用者建表
相互賦值許可權用法:
兩個使用者:user1
和user2
,都是在庫test
上,分別有表user1.table1
,user2.table2
但是用user1
登入的時候,user2
上表就不能用,此時就可以使用grant命令
grant privilege [,.
..]on object [,.
..]to
舉例:
不同使用者下表的賦權
user1
使用者操作user2
使用者的table2
表
grant
insert
,update
,delete
on user2.表名 to user1;
grant
insert
,update
,delete
on user2.table2 to user1;
//在user1下,select * from user2.table2
不同使用者下序列的賦權
grant
select
,alter
on user2.序列名 to user1;
grant
select
,alter
on user2.seq_table2 to user1;
不同使用者下的函式賦權
grant
execute
on 函式名 to 其它使用者
grant
execute
on ahsimis_query.wsbs_pk_date_validate to ahsicp3
不通使用者下包的賦權
grant
execute
on 包名 to 其他使用者;
grant
execute
on ahsimis_query.pkg_pan_公眾服務平台介面 to ahsicp3
高階:不同庫
命令格式
grant 許可權 on 資料庫名.表名 to 使用者名稱@登陸方式 identified by
'password1'
;
**授於使用者的許可權
命令格式
revoke 許可權 on 資料庫名.表名 from 使用者名稱@登陸方式;
檢視許可權:
oracle中資料字典檢視分為3大類,用字首區別,分別為:user,all 和 dba,許多資料字典檢視包含相似的資訊。
user_*:有關使用者所擁有的物件資訊,即使用者自己建立的物件資訊
all_*:有關使用者可以訪問的物件的資訊,即使用者自己建立的物件的資訊加上其他使用者建立的物件但該使用者有權訪問的資訊
dba_*:有關整個資料庫中物件的資訊
(這裡的*可以為tables,indexes,objects,users等。)
檢視所有使用者
select
*from dba_user;
select
*from all_users;
select
*from user_users;
檢視使用者系統許可權
select
*from dba_sys_privs;
select
*from all_sys_privs;
select
*from user_sys_privs;
檢視使用者物件許可權
select
*from dba_tab_privs;
select
*from all_tab_privs;
select
*from user_tab_privs;
檢視所有角色
select
*from dba_roles;
檢視使用者所擁有的角色
select
*from dba_role_privs;
select
*from user_role_privs;
檢視當前使用者的預設表空間
select username,default_tablespace from user_users;
檢視某個角色的具體許可權
grant
connect
,resource,
create
session
,create
view
to test;
檢視resource具有那些許可權,
select
*from dba_sys_privs where grantee=
'resource'
;
資料庫同乙個庫上面,不同使用者相互賦予許可權
用法 有兩個使用者 user1和user2,都是在庫test上,分別有表user1.table1,user2.table2 但是用user1登入的時候,user2上表就不能用,此時就可以使用grant命令了 grant privilege on object to 如 grant insert,up...
同乙個TextView,不同顏色,不同字型大小設定
開發中經常會遇到同乙個textview需要顯示不同顏色,不同字型大小的文字。通過spannablestringbuilder 可以很容易的實現這兩個功能。以下是乙個自定義的spannableutils public class spannableutils spannablestringbuilde...
python 同乙個float值,id不同
10000 is 10000 true a 10000 b 10000 a is b false a 1 b 1 a is b true 解釋上面這個例子 第乙個,兩個10000 pyintobject都會在編譯的時候就生成,而且因為他們被編譯為了乙個pycodeobject所以兩個10000是一樣...