excel 中批量生成mysql的脚本(转)

一、假设你的表格有A、B、C三列数据,希望导入到你的数据库中表格table,对应的字段分别是col1、col2、col3

 

二、在你的表格中增加一列,利用excel的公式自动生成sql语句,具体方法如下:

 

1、增加一列(假设是D列)

 

2、在第一行的D列,就是D1中输入公式:
=CONCATENATE("insert into table (col1,col2,col3) values ('",A1,"','",B1,"','",C1,"');")

 

3、此时D1已经生成了如下的sql语句:
insert into table (col1,col2,col3) values ('a','11','33');

 

4、将D1的公式复制到所有行的D列(就是用鼠标点住D1单元格的右下角一直拖拽下去啦)

 

5、此时D列已经生成了所有的sql语句

 

6、把D列复制到一个纯文本文件中,假设为sql.txt

 

三、把sql.txt放到数据库中运行即可,你可以用命令行导入,也可以用phpadmin运行。

 

四、对于大数据量的信息导入,按照上述方法制作刷库脚本虽然简单,可是每次只导入一条记录会很耗资源和时间。所以考虑通过修改导入公式,实现批量数据一次性入库,以节约刷库时间和系统资源。

 

参考如下,假设一共有1000条记录: 

 

首条(第1行,包含第一条数据):

=CONCATENATE("insert into table (col1,col2,col3) values ('",A1,"','",B1,"','",C1,"'),")

首条(第1行,不包含数据)

=CONCATENATE("insert into table (col1,col2,col3) values ")

 

中部(第2~999行):

=CONCATENATE("('",A2,"','",B2,"','",C2,"'),")

 

末条(第1000行):

=CONCATENATE("('",A1000,"','",B1000,"','",C1000,"');")

posted @ 2011-11-28 14:51  wtx  阅读(2330)  评论(0编辑  收藏  举报