Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1012966
  • 博文数量: 584
  • 博客积分: 2293
  • 博客等级: 大尉
  • 技术积分: 3045
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-28 11:15
文章分类

全部博文(584)

文章存档

2012年(532)

2011年(47)

2009年(5)

我的朋友

分类: Oracle

2011-12-27 21:58:57

假定表里面已经有一些数据了,现在要通过存储过程来让已有的数据不停的翻番,已造出大量的数据

CREATE OR REPLACE PROCEDURE "INSERTDATA"
AS
distance int;
BEGIN
  distance := 0;
  loop
    INSERT INTO user.table
    (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO, TEST)
  SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO, TEST
    FROM user.table;
    exit when distance > 4;
    distance := distance + 1;
end loop;
commit;
END;


完了,可以查一下表的大小

select round(sum(bytes)/(1024*1024),2) from user_extents where segment_name = 'user.table';
阅读(860) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~