Oracle 向表中添加百万数据

 

--创建表
create table test_p_2(
       log number(10) primary key,
       name varchar2(20),
       psaaword varchar2(20)
);
create sequence seq_log;

insert into test_p_2 values(seq_log.nextval,'kikiwen','123456');

--随机向一张表插入 1百万数据
declare--数据块头
    v_cnt number :=0;--定义计数器
begin--数据块执行部分
    for i in 1..1000000 loop --for循环tou (for 条件 loop     end loop)
      v_cnt := v_cnt +1;--循环一次计数器+1
         insert into test_p_2 values(
                seq_log.nextval,--获取下一个序列
                DBMS_RANDOM.STRING ('a', 5),--随机产生5个26字母的任意大小写
                DBMS_RANDOM.STRING ('a', 10)); --随机产生10个26字母的任意大小写
    if v_cnt >= 10000 then --if条件判断(当数据插入到10000条时保存一次)
            commit;--保存
          v_cnt :=0;--清空计数器
    end if;--if结束
    end loop;--for循环结束
    commit; --不管最后数据是多少再保存一次,防止有零头没保存
end;--数据块结束
/--结束符号

 

posted @ 2017-02-25 13:34  CHIL  阅读(1397)  评论(0编辑  收藏  举报