linux下 在QT中把mysql的数据导出excel

linux下 在QT中把mysql的数据导出excel,第1张

方法一:进入到mysql的控制台,输入:
1 SELECT INTO OUTFILE ‘/testxls‘ FROM tb1 WHERE 1 ORDER BY id DESC LIMIT 0, 50;
这样,应该会在你的mysql的var/目录下产生一个testxls的文件。。。
但是如果你的shell的登录帐户和mysql的运行账户不同,很可能这个方法就不适用了,因为你可以通过mysql控制台来产生这个文件,但是你却没有办法通过shell来对这个文件进行 *** 作,因为用户不同,没有访问权限。
这个时候,同事告诉偶滴办法就重装登录了!!!
1 echo "SELECT FROM tb1 WHERE 1 ORDER BY id DESC LIMIT 0, 50;"| /usr/local/mysql/bin/mysql -hlocalhost -uroot -pxxxxx > /tmp/testxls
ok,把你的testxls文件从tmp下载到本地打开来看看吧。。。
什么?中文乱码?
别着急。。。
因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,这个时候你有两种选择,
1在服务器端使用iconv来进行编码转换,
1 iconv -futf8 -tgb2312 -otest2xls testxls
如果转换顺利,那么从server上下载下来就可以使用了。
转换如果不顺利,则会提示:iconv: illegal input sequence at position 1841 类似于这样的错误,
先把testxls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。
把testxls以文本方式打开,然后另存为,在编码选择ANSI编码,保存。

望采纳。。。纯手敲

以上就是关于linux下 在QT中把mysql的数据导出excel全部的内容,包括:linux下 在QT中把mysql的数据导出excel、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/9483997.html

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

发表评论

登录后才能评论

评论列表(0条)

保存