您的位置:首页 > 数据库 > MySQL

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

2011-11-28 14:51 549 查看
一、假设你的表格有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,"');")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: