oracle 用存储过程向表插入数据的问题

如题所述

实际上存储过程向表中插入数据和sql执行的区别是不大的,只不过是存储过程是用loop等循环插入,之后顺序执行sql语句,不用命令行执行。

CREATE OR REPLACE PROCEDURE insert_data_4_pressure_3
 is
 
  --Result1  VARCHAR2(50);
  VAR_num number;
begin
  VAR_num:=1;
 
 while
   VAR_num< 1000000
   LOOP
      insert into rp_trans_log_day
        (trans_time,
         trans_province,
         trans_type,
         score_range,
         rule_name,
         trans_num)
        select to_date('2013/10/29', 'yyyy-mm-dd'),
               round(dbms_random.value(1, 300)) || '省',
               round(dbms_random.value(1, 800)) || '类型',
               round(dbms_random.value(1, 100)) || '风险分值',
               round(dbms_random.value(1, 300)) || '规则名称',
               '1'
          from dual;
        commit;
    VAR_num:=VAR_num+1;
    <a href="https://www.baidu.com/s?wd=end&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YvnHu9nHRdm1NBPAnvnyFB0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EnHTvPWmLnWfsn1bLnWDYP1mzn0" target="_blank"class="baidu-highlight">end</a> loop;
 
<a href="https://www.baidu.com/s?wd=end&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YvnHu9nHRdm1NBPAnvnyFB0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EnHTvPWmLnWfsn1bLnWDYP1mzn0" target="_blank" class="baidu-highlight">end</a> insert_data_4_pressure_3;
温馨提示:答案为网友推荐,仅供参考