郭哥给我的模板,留着以后用。
declare i number; cursor select_data_table is select * from ( select A.*, rownum RN from (select * from sms_temp) A where rownum <= 100 ) WHERE RN >= 0; --声明一个游标,游标的名称是select_data_table rec_select_data_table select_data_table%rowtype; begin i := 1; --将变量i一个初始值 --开始读数据 if select_data_table%isopen then close select_data_table; end if; open select_data_table; loop fetch select_data_table into rec_select_data_table; if select_data_table%notfound then close select_data_table; exit; else DBMS_OUTPUT.put_line('手机号码:' || rec_select_data_table.phone || ',姓名:' || rec_select_data_table.name); insert into sms_info_down_batch (batch_id) values (seq_sms_down_batch_batch_id.nextval); insert into sms_info_down_detail (id, batch_id, phone, content) values (seq_sms_down_detail_id.nextval, seq_sms_down_batch_batch_id.currval, rec_select_data_table.phone, '短信' || to_char(i, '000') || '内容'); commit; end if; i := i + 1; end loop; EXCEPTION WHEN OTHERS THEN dbms_output.put_line('系统出错的日志为:' || to_char(SQLERRM)); rollback; END; /