数据导入

  前几天,boss发给我20几份txt,让我把里面的数据给导入到一张表里面。里面的数据大致可以分为4种类型的。

  开始我的思路是用程序进行编写,解析这4中类型,然后产生sql语句,在insert。写完之后发现这效率极低,跑了很长时间都没跑完,主要是从文件中读取数据分析数据太费时了。

  后来,上述方法不行,带我的前辈,又教了一个办法。蛮快,蛮好。

  先把这几个文件进行格式化下(如分隔符,行尾没空格等)。如果会shell的,直接放到linux下,用shell。但是不会shell的,有老老实实的用UltraEdit工具(我就用这工具)。

  1:用上面的方法,格式话这些文件,产生4种类型的文件(分隔符,列等都不一样)。

  2: 新建ctl文件

LOAD DATA

INFILE
'D:\11\1.txt'
INFILE
'D:\22\2.txt'


APPEND INTO TABLE z_tmp
FIELDS TERMINATED BY
","
(name,sex,city)

注意txt文件里那一列不能有空数据,否则那一行插不成功

  3:在cmd里面输入sqlldr userid=test/test@192.168.1.1 control=shangmianwenjian.ctl

这样就可以了。

posted @ 2011-07-15 11:56  我滴地盘在哪  阅读(283)  评论(0)    收藏  举报