如何设定晚上23点定时读取本地d:\download\dingdan\dingdan_2009-07-09.txt
的数据,并导入到ORACLE指定的表中?1、ORACLE10g,表空间为BKML,用户密码为bkml/bkml,表名为ORDER2、表ORDER的结构为
bkdh price leixing beizhu varchar(20) number(10,2) varchar(300) varchar(4000)3、dingdan_2009-07-09.txt的数据结构及数据样本 daihao danjia zhonglei demo 211-903,320.2,月刊,不破订只能全年订购
211-903,320.2,年刊,不破订只能全年订购
211-903,320.2,季刊,不破订只能全年订购
4、说明:路径固定,但dingdan_2009-07-09.txt 文件名dingdan_后面的是以日期取名,每天变化;5、导入前,必须将ORDER表的数据清空,然后将TXT里头的数据全部插入,若有错误,生成日志;以上是在Windows的机器如何解决?若在Linux上又如何解决?跪求解决方案。
的数据,并导入到ORACLE指定的表中?1、ORACLE10g,表空间为BKML,用户密码为bkml/bkml,表名为ORDER2、表ORDER的结构为
bkdh price leixing beizhu varchar(20) number(10,2) varchar(300) varchar(4000)3、dingdan_2009-07-09.txt的数据结构及数据样本 daihao danjia zhonglei demo 211-903,320.2,月刊,不破订只能全年订购
211-903,320.2,年刊,不破订只能全年订购
211-903,320.2,季刊,不破订只能全年订购
4、说明:路径固定,但dingdan_2009-07-09.txt 文件名dingdan_后面的是以日期取名,每天变化;5、导入前,必须将ORDER表的数据清空,然后将TXT里头的数据全部插入,若有错误,生成日志;以上是在Windows的机器如何解决?若在Linux上又如何解决?跪求解决方案。
linux下原理差不多,但是没有实践过,留给楼下吧
linux下原理差不多,但是没有实践过,留给楼下吧
具体如何写?
load data
infile 'dingdan_2009-07-09.txt'
into table ORDER
badfile 'bad.txt'
TRUNCATE
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY ' '
(bkdh char,
price interger external,
leixing char,
beizhu char
)
保存为insert.ctl文件,放在d:\download\dingdan下。2.记事本新建一个bat文件,内容:
sqlldr userid=bkml/bkml control=insert.ctl log=sysout.out
保存为insert.bat,放在d:\download\dingdan下。3.打开windows下“开始”→“附件”→“系统工具”→“任务计划”,添加任务计划,把这个bat文件添加进去,时间设置为当天23点。note:
以上代码未经测试,可能有错误的地方,不要完全照搬。