一、利用excel生成批处理脚本
excel数据生成sql插入数据库语句
excel表格有A、B、C三列数据,希望导入到数据库users表中,对应的字段分别是name,sex,age
在你的excel表格中增加一列,利用excel的公式自动生成sql语句,方法如下:
1、增加一列(D列)
2、在第一行的D列,就是D1中输入公式: =CONCATENATE("insert into users (name,sex,age) values ('",A1,"','",B1,"','",C1,"');")
3、此时D1已经生成了如下的sql语句: insert into users (name,sex,age) values ('ls','女','24');
4、将D1的公式复制到所有行的D列(就是用鼠标点住D1单元格的右下角一直拖拽下去啦)
5、此时D列已经生成了所有的sql语句
6、把D列复制到一个纯文本文件中。
二、在PL/SQL中编写存储过程
declare
i number:=1;
begin
for i in 1..1000000 loop
insert into table_name values(i , a , b );
if mod(i,500)=0 then
commit;
end if;
end if;
(以下是已经调试通过的存储过程)
DECLARE
i int;
BEGIN
--循环游标
--for i in 1..10 loop
insert into xtgl_jd (select i,i,JD_MC,JD_JC,JDJC_BM,SJJD_BM,XZQY_BM,YB,DZ,GDDH,CZ,LXR,YX_BZ from xtgl_jd jd where jd.jd_bm='000000001');
--END loop;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Exception occurs during registering and starting job...');
三、利用PL/SQL插入数据
用存储过程实现向下表中 插入数据,其中id 是主键。
NSERT INTO WATAB (id
,NAME
,YEAR
,MEMO
VALUE(
object_id,
'XZW',
'XZW',
'XZW'
)
insert into watab(id,name,year,memo)
select rownum,'xzw','xzw',xzw'
from dual
connect by rownum<=10000;