1.将要导入的Excel数据文件转为csv文件(不需要标题)
2.新建ctl文件 内容如下:
load data
CHARACTERSET AL32UTF8 //防止乱码
infile 'e:sqlfsfp.csv' //csv文件位置
into table "TMP_INVOICE_TEST" //表名(测试时,表名小写会报错)
fields terminated by ','
trailing nullcols --将所有不在纪录中的指定位置的列当作空值
(NAME,TAX,ENO,CODE,TOTAL,TAXATION,URL,TIMES) //csv文件数据对应的数据表中的字段,一一对应
3.cmd输入命令:
sqlldr userid=ydfp/ydfp@192.168.1.1:1001/YDYW control=e:sqlimp.ctl log=e:sql222.log
sqlldr userid=用户名/密码@地址 control=ctl文件位置 log=日志文件位置(可有可无)
4.selec * from TMP_INVOICE_TEST //数据导入成功
注意:这种方式只能一次性导入,如果表中有数据是导入不成功的,如果是分批导入,建议新建一个临时表,先往临时表里插入,再从临时表往正式表 select into 。ctl文件中注释需要去掉,不然会出错。效率还是很快的。