fromsessio
_rolesr
r
3)查看当前用户的角色列表r
SQLselectfromuser_role_privsr
r
4)查看数据库所有角色r
SQLselectfromdba_rolesr
r
5)查看某个用户所拥有的角色r
SQLselectgra
ted_roleadmi
_optio
r
fromdba_role_privsr
wheregra
teeJSAMr
r
6)查看角色CONNECT拥有的系统权限r
SQLselectroleprivilegeadmi
_optio
r
fromrole_sys_privsr
whereroleCONNECTr
r
7)查看角色拥有的对象权限r
SQLselectow
ertable_
ameobject_
ameprivilegegra
tabler
fromrole_tab_privsr
whereroleCONNECTr
orderbyow
ertable_
ameprivileger
r
r
四、事务处理r
1、事务提交r
1)打开自动提交r
SQLsetautocommito
r
r
2)关闭自动提交r
SQLsetautocommitoffr
r
3)显示提交命令r
SQLcommitr
r
2、事务回滚r
1)保存存储点r
SQLsavepoi
t存储点名称r
r
2)回滚到某个存储点r
SQLrollbackto存储点名称r
3)回滚整个事务r
SQLrollbackr
r
r
五、对象管理r
1、显示一个表的结构r
SQLdesctable_
amer
SQLdescribetable_
amer
r
2、查看对象及状态r
查看当前用户的函数与存储过程及状态:r
SQLselectobject_
amestatusfromuser_objectswhereobject_typeFUNCTIONr
SQLselectobject_
amestatusfromuser_objectswhereobject_typePROCEDUREr
r
object_type可以是:r
SEQUENCEr
PROCEDUREr
LOBr
PACKAGEr
PACKAGEBODYr
TRIGGERr
INDEXr
TABLEr
VIEWr
FUNCTIONr
JavaCLASSr
JavaSOURCEr
TYPEr
r
r
3、查看对象的源代码r
可用于查看存储过程、函数、包等源代码r
SQLselecttextfromall_sourcewhereow
erusera
d
ameupperplsql_
amer
r
4、查看当前用户所有的表r
SQLselectfromuser_tablesr
SQLselecttable_
amefromuser_tablesr
tabs是user_tables的同义词,所以可以直接使用tabs更加简洁。r
r
5、编译对象r
SQLalterfu
ctio
FUNCTION_NAMEcompiler
SQLalterprocedurePROCEDURE_NAMEcompiler
SQLaltertriggerTRIGGER_NAMEcompiler
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
r
6、锁对象r
1)当前所有被锁的对象信息r
SQLselectfromvlocked_objectr
r
2)查询出被锁对象、锁的模式及所属用户r
SQLselectbow
erbobject_
ameasessio
_idalocked_moder
fromvlocked_objectadba_objectsbr
wherebobject_idaobject_idr
r
3)被锁对象的会话信息r
SQLselectbuser
amebsidbserialblogo
_timer
fromvlocked_objectavsessio
br
whereasessio
_idbsidr
orderbyblogo
_timer
r
有些锁可能等待很久都没释放,此时可能需要强行关闭:r
语法:altersystemkillsessio
sidserialr
SQLaltersystemkillsessio
1041894r
r
4)查询发生锁对应的语句r
a)r
SQLselectsql_textr
fromvsqlr
wherehash_valuei
r
selectsql_hash_valuer
fromvsessio
r
wheresidi
selectsessio
_idfromvlocked_objectr
r
b)r
SQLselectdisr