oracle笔记
2013-10-31 10:52
344 查看
分组排序example:
merge into t_directory d
using (select rank() over(partition by parentdircode order by id ) rk,s.* from t_directory s) t
on (t.dircode = d.dircode)
when matched then
update set d.rank = t.rk;
数据库查询某个session会话开启的游标数
select o.sid, osuser, machine, count(*) num_curs
from v$open_cursor o, v$session s
where user_name = 'ADMIN2' and o.sid=s.sid
and machine = 'wsnjc-1970'
group by o.sid, osuser, machine
order by num_curs desc;
oracle数据库记录错误堆栈信息:
Create Or Replace Procedure Proc_testErrLine
Is
i number(8);
Begin
i:=1/0;
exception
when others then
dbms_output.put_line(dbms_utility.format_error_stack());
dbms_output.put_line(dbms_utility.format_call_stack());
dbms_output.put_line(dbms_utility.format_error_backtrace());
End proc_testErrLine;
/
Show Err;
【输出结果】
ORA-01476: divisor is equal to zero
----- PL/SQL Call Stack -----
object line object
handle number name
6978D4BC 10 procedure CQMKT.PROC_TESTERRLINE
6846F2C0 7 anonymous block
ORA-06512: at "CQMKT.PROC_TESTERRLINE", line 5
sql跟踪、计时:
执行
@$ORACLE_HOME/rdbms/admin/utlxplan.sql
@$ORACLE_HOME/sqlplus/admin/plustrce.sql
grant all on plan_table to public;
grant plustrace to public;
set autotrace on;
set timing on;
merge into t_directory d
using (select rank() over(partition by parentdircode order by id ) rk,s.* from t_directory s) t
on (t.dircode = d.dircode)
when matched then
update set d.rank = t.rk;
数据库查询某个session会话开启的游标数
select o.sid, osuser, machine, count(*) num_curs
from v$open_cursor o, v$session s
where user_name = 'ADMIN2' and o.sid=s.sid
and machine = 'wsnjc-1970'
group by o.sid, osuser, machine
order by num_curs desc;
oracle数据库记录错误堆栈信息:
Create Or Replace Procedure Proc_testErrLine
Is
i number(8);
Begin
i:=1/0;
exception
when others then
dbms_output.put_line(dbms_utility.format_error_stack());
dbms_output.put_line(dbms_utility.format_call_stack());
dbms_output.put_line(dbms_utility.format_error_backtrace());
End proc_testErrLine;
/
Show Err;
【输出结果】
ORA-01476: divisor is equal to zero
----- PL/SQL Call Stack -----
object line object
handle number name
6978D4BC 10 procedure CQMKT.PROC_TESTERRLINE
6846F2C0 7 anonymous block
ORA-06512: at "CQMKT.PROC_TESTERRLINE", line 5
sql跟踪、计时:
执行
@$ORACLE_HOME/rdbms/admin/utlxplan.sql
@$ORACLE_HOME/sqlplus/admin/plustrce.sql
grant all on plan_table to public;
grant plustrace to public;
set autotrace on;
set timing on;
相关文章推荐
- oracle exp/imp 详解
- oracle ORA-00904无效的标识符
- 连接oracle数据库出现oracle ORA-12526: TNS: 监听程序: 所有适用例程都处于受限模式
- Oacle sys用户无法使用sysdba登录
- ORACLE 字符的查看与修改 以utf8为例
- oracle 基本语句学习 (三)之子查询
- oracle 12cR1 datagurad搭建文档
- mysql 与 oracle的几个区别
- 如何查询Oracle中所有用户信息
- Oracle数据库查看当前数据库版本的方法
- win8安装oracle 11g 报错 要求的结果: 5.0,5.1,5.2,6.0 6.1 之一 实际结果: 6.2
- Oracle AWR 数据导入/导出的步骤
- 解决ORACLE启动不成功问题
- oracle 11g physical standby switchover
- 收缩Oracle数据文件
- Oracle中CBO优化器简介
- Oracle DB 复制数据库
- Java连接Oracle简单代码示例
- 收藏翻看:Oracle数据库和SQL数据库核心内容
- Automate the Sizing of your SGA in Oracle 10g