之前已经有了一篇何将excel导入mysql的文章,不过,今天又看到了dede官方的一篇介绍dede excel导入数据库的文章,大同小异,不过还是转过来留存吧。
方法一
1.在需要导入的数据最后一列,写入一个Excel公式(例子中是“SQL”下面的单元格,“SQL”是不必要的,仅仅是为了看起来方便)。
=CONCATENATE("insert into employee(name,birthday,email,hobby)values('",RC[-4],"','",RC[-3],"','",RC[-2],"','",RC[-1],"');") ")
这样就会生成insert语句,正如你在例子Excel文件中看到的(当你单击SQL下面的单元格时,可以看到公式)。 如果有日期格式使用下面的方面
=CONCATENATE("insert into employee(name,birthday,email,hobby)values('",RC[-4],"','",TEXT(RC[-3],"yyyy-mm-dd hh:mm:ss"),"','",RC[-2],"','",RC[-1],"');")
这里用到了TEXT函数来将日期格式化成mysql能接受的日期字符串
方法二
假如要把如图所示的Excel表格导入到MySql中,如图:
步骤一: 选取要导入的数据快儿,另外要多出一列,如下图:
步骤二: 将选中的数据快儿拷贝到一个新建的表格工作薄,然后“另存为” -》“文本文件(制表符分割)(*.txt)”,假如存到“D:data.txt”这个位置里。如图:
步骤三: 根据要导入的数据快儿建立MySql数据库和表,然后使用命令 load data local infile 'D:data.txt' into table excelto fields terminated by 't'; 进行导入操作。如下图:
现在数据已经全部导入到MySql里了, 让我们来select一下吧,如图:
到此,数据由Excel到MySql的转换已经完成。 下面说下,数据从MySql到Excel的转化,其过程其实还是借助那个“制表符分割”的文本文件。 将如要将这个表中的男生信息导入到Excel中,可以这样。
select * into outfile 'D:man.txt' from exceltomysql where xingbie="男";
这样,表中所有男生的信息都被输出到以制表符分割,'n'结尾的文本文件D:man.txt文件中。 你可以打开Excel,然后选择“数据”->“导入外部数据”->“导入数据”,选中“D:man.txt”,一路确定就行了。