易截截图软件、单文件、免安装、纯绿色、仅160KB

ORACLE数据库中关于游标和记录表的速度测试

1
、问题提出
     
在我们日常的数据库操作尤其是存储过程设计中,经常有记录表之类的集合、显示游标等操作,但这两种数据处理方式在速度及性能上有什么区别呢?
2
、测试方法
   

ORACLE
数据库中创建一个数据表,然后对创建的数据表分别插入
100
条、
1000
条、
10000
条、
100000
条数据,最后对这些数据分别用游标和记录表执行相同功能的操作
10
次,计算平均消耗的系统时间。

1
)创建数据表
create table  table_test
(
 COL1  INTEGER,
 COL2  VARCHAR2(20)
)

2
)插入数据(以
100000
条数据为例)
--
循环
100000
次添加
DECLARE
 i     INTEGER;
BEGIN
 FOR i IN 1..100000 LOOP
     INSERT INTO TABLE_TEST(COL1,COL2)
     VALUES(i,'ADD'||i);
 END LOOP;
 COMMIT;
 EXCEPTION
   WHEN OTHERS THEN
   ROLLBACK;
END;

3
)游标操作
--
游标处理
DECLARE
 v_COL1   TABLE_TEST.COL1%TYPE;
 v_COL2   TABLE_TEST.COL2%TYPE;
 v_BEGIN  INTEGER;
 v_END    INTEGER;
 CURSOR CUR_TYPE IS
 SELECT COL1,COL2 from TABLE_TEST;
BEGIN
 SELECT DBMS_UTILITY.get_time INTO v_BEGIN
 from   DUAL;
 DBMS_OUTPUT.put_line('
开始时间:
'||v_BEGIN);
  IF CUR_TYPE%ISOPEN = FALSE then
  OPEN CUR_TYPE;
 END IF;
 FETCH CUR_TYPE INTO v_COL1,v_COL2;
 WHILE CUR_TYPE%FOUND
 LOOP
  FETCH CUR_TYPE INTO v_COL1,v_COL2;
 END LOOP;
 CLOSE CUR_TYPE;   
 SELECT DBMS_UTILITY.get_time INTO v_END
 from   DUAL;
  DBMS_OUTPUT.put_line('
结束时间:
'||v_END);
 DBMS_OUTPUT.put_line('
开始时间
'||v_BEGIN||'
,结束时间
'||v_END||'
消耗时间
'||TO_CHAR(v_END-v_BEGIN));
 DBMS_OUTPUT.put_line('
消耗时间:
'||TO_CHAR(v_END-v_BEGIN));
END;

4
)记录表操作
--
记录表处理
DECLARE
 v_COL1 


相关文档:

Oracle时间日期操作

Oracle时间日期操作
sysdate+(5/24/60/60) 在系统时间基础上延迟5秒
sysdate+5/24/60 在系统时间基础上延迟5分钟
sysdate+5/24 在系统时间基础上延迟5小时
sysdate+5 在系统时间基础上延迟5天
add_months(sysdate,-5) 在系统时间基础上延迟5月
add_months(sysdate,-5*12) 在系统时间基础上延迟5年
上月末的日期:sel ......

oracle的一些基本语法和一些优化问题

查询:
select distinct(empno) , name , age  from t_person t where  (t.age between 21 and 25 or name like '%王%') and
  empno like '32%';
更新:
 update t_person set name = 'ww' where empno = '321654';
 update t_person set(empno,name,age) = (select empno,name,age f ......

Oracle数据库监听配置


转:http://oracle.chinaitlab.com/install/755900.html
        简单来说,Oracle数据库的监听配置包括服务器端的配置和客户端的配置。服务器端是通过监听器即LISTENER来完成的,而客户端配置有多种,常用的是采用本地服务名来配置。关于监听器和本地服务名,详细解释如下:
一、 ......

回望,我的Oracle之路


  大学的时候,我是管理学院的,后来细分专业的时候选择了信息管理。于是管理、会计、财务、机械、电子,甚至说情报检索都学过,当然也包括计算机。
  如果不算foxbase和foxpro的话,数据库方面仅仅学过一门数据库原理,用的教材是Stanford的影印版。
  当时有一个韦老师,总是吹她老公是MIT的博士,很NB。总是对 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号