怎样将MySQL数据导出到Excel表中

怎样将MySQL数据导出到Excel表中,第1张

在mysql命令行下执行以下sql语句:

mysql>select * from xi_table into outfile ’/tmp/test.xls’

一句话搞定。

linux系统尽量导出在/tmp目录下,不会涉及读写权限问题!

导出为txt文件:

select * from xi_table into outfile ’/tmp/test.txt’

有时候有excel打开的时候会出现乱码,

因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,这个时候你有两种选择:

在服务器端使用iconv来进行编码转换:

iconv -futf8 -tgb2312 -otest2.xls test.xls

如果转换顺利,那么从server上下载下来就可以使用了。

转换如果不顺利,则会提示:

iconv: illegal input sequence at position 1841 类似于这样的错误,

先把test.xls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。

把test.xls以文本方式打开,然后另存为,在编码选择ANSI编码,保存。

这样再用excel打开,乱码问题就解决了.

MySQL

打开MySQL数据库,然后在在MySQL中新建一个【student】表,创建列为ID和Name,如下图所示

Excel

新建一张Excel,Excel列中的名字要与数据库中student的列名一样,如下图所示:

导入向导

右击数据库中的【student】表,在d出的下拉菜单中选择【导入向导】,如下图所示:

选择数据格式

会d出一个【导入向导】窗口,选择数据的格式,比如excel的格式为.xlsx,当然有的excel的格式为.xls,根据后缀名而定,如下图所示:

导入excel

然后要导入方才新建的excel文件,选择文件的存放位置,然后点击【打开】按钮即可,如下图所示:

选择sheet

然后选择要导入excel文件中的哪一个sheet,比如选择sheet1,然后点击【下一步】按钮,如下图所示:

导入模式

然后一直点击【下一步】按钮来到【导入模式】,勾选【添加:添加记录到目录表】选项,点击【下一步】按钮,如下图所示:

开始导入

点击【开始】按钮,当出现【Finished -Successfully】提示时即表示导入成功,如下图所示:

方法很多,不过建议你先看看mysql的开发文档,里面写的很详细的,如果你懒得看,可以看下面的

1.有个软件phpexcelparserprov4.2可以,你可以在这里下载:http://down.chinaz.com/s/9459.asp

2.可将excel存成csv格式。然后通过phpmyadmin倒入mysql

3.先导入access中,再弄到mysql中,或者自己写程序读出excel中数据然后存入mysql中

4.还有一个比较笨的手工方法,就是先利用excel生成sql语句,然后再到mysql中运行,这种方法适用于excel表格导入到各类sql数据库:

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

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

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

2、在第一行的d列,就是d1中输入公式:

=concatenate("insertintotable(col1,col2,col3)values('",a1,"','",b1,"','",c1,"')")

3、此时d1已经生成了如下的sql语句:

insertintotable(col1,col2,col3)values('a','11','33')

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

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

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

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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8506320.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-17
下一篇 2023-04-17

发表评论

登录后才能评论

评论列表(0条)

保存