日期:2014-05-16 浏览次数:20967 次
背景:R:\2012-04-19,R:\2012-04-20,这样的目录很多(一天一个目录,日期号为目录名),而且这样的目录下面也有很多sz000555.xls,sh60000.xls类似文件(前缀是股票代码)。 要求:把这些文件夹下的文件导入数据库。文件名为表名,如无则创建,文件夹名由“YYYY-MM-DD”变为“YYYYMMDD”做为rq字段的值。 进展: 一、现通过cmd的批处理模式下执行nyt.bat。 C:\Documents and Settings\Administrator>mysql -u root -p < nyt.bat nyt.bat内容如下: use stock; CREATE TABLE sz000548 ( rq date not null, sj time not null, cjj decimal(8,2) unsigned not null, ss mediumint not null, bs char(1) not null, index (rq,cjj,bs) ); load data infile 'R:/2012-04-19/sz000548.xls' into table sz000548 IGNORE 1 LINES (sj, cjj,@dummy,ss,@dummy,bs) set rq = 201200419; 测试通过,可以建表,导入数据。 二、使用cmd命令,获取目录下的文件名 echo off &for /f "tokens=*" %i in ('dir/b/a') do echo %~ni >>files.txt 把所有文件名导出到了files.txt中。 下面一步怎么解决: 把导出的文件名做为变量,传给mysql。在建表、导入数据中使用?
mysqldump -u root -p mysql<d:\mysql.sql
------解决方案--------------------
LOAD DATA col_num INFILE “c:/1.txt" INTO TABLE tablename;
------解决方案--------------------