linux下 在QT中把mysql的数据导出excel
发布网友
发布时间:2022-04-26 16:07
我来回答
共1个回答
热心网友
时间:2022-05-08 02:46
方法一:进入到mysql的控制台,输入:
1. SELECT * INTO OUTFILE ‘./test.xls‘ FROM tb1 WHERE 1 ORDER BY id DESC LIMIT 0, 50;
这样,应该会在你的mysql的var/目录下产生一个test.xls的文件。。。
但是如果你的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/test.xls
ok,把你的test.xls文件从tmp下载到本地打开来看看吧。。。
什么?中文乱码?
别着急。。。
因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,这个时候你有两种选择,
1.在服务器端使用iconv来进行编码转换,
1. iconv -futf8 -tgb2312 -otest2.xls test.xls
如果转换顺利,那么从server上下载下来就可以使用了。
转换如果不顺利,则会提示:iconv: illegal input sequence at position 1841 类似于这样的错误,
先把test.xls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。
把test.xls以文本方式打开,然后另存为,在编码选择ANSI编码,保存。
望采纳。。。纯手敲追问那么在麻烦你一下 怎么移植到QT上面用?
linux下 在QT中把mysql的数据导出excel
方法一:进入到mysql的控制台,输入:1. SELECT * INTO OUTFILE ‘./test.xls‘ FROM tb1 WHERE 1 ORDER BY id DESC LIMIT 0, 50;这样,应该会在你的mysql的var/目录下产生一个test.xls的文件。。。但是如果你的shell的登录帐户和mysql的运行账户不同,很可能这个方法就不适用了,因为你可以...
qt已经成功编译mysql数据库,为什么不能加载成功
大概的步骤是:1.下载mysql最新版本,安装的时候选择全部安装,否则你安装的mysql里没有对应的c++文件 【也就是没有E:\xampp\mysql\lib 和 E:\xampp\mysql\include 这2个目录】 这2个目录是很重要的 2.下载qt官方的qt源码,【如果你下载的qt的安装版,默认是没有源码的,你需要去qt官方再次下载...
如何在linux下安装QT源码包,安装后用图形形式编程
为了连接MySQL数据库,需要安装连接MySQL的驱动程序:sudo apt-get install libqt4-sql-mysql 比起在Windows下安装和配置Qt的MySQL驱动来说,简直太方便了。如果还需要其它的没有默认安装的Qt库,可以在命令行输入 sudo apt-get install libqt4- 然后按tab键自动补全,就会列出所有以libqt4- 开头的软...
在vs中,qt连接mysql运行时,出现QSqlQuery::exec:database not open,如 ...
db.setHostName("localhost"); //设置数据库主机名 db.setDatabaseName("test"); //设置数据库名 db.setUserName("root"); //设置数据库登入用户名 db.setPassword("123456"); //设计数据库登入密码 自己试试。在if(!db.open()){ }里面最好输出一下,看看是否open成功 ...
qt mysql 数据库备份的问题
QString Cmd = QString("mysqldump -u%1 -p%2 -h%3 medicine > medicine.sql").arg(UserName,PassWord,Serverip,directory,QDateTime::currentDateTime().toString());这一句里面 只有 %1、%2、%3 三个变量,可是后面的参数却有 5 个,没有问题吗 ...
linux qt下链接数据库QSqlDatabase: QMYSQL driver not loaded QSqlDa...
在命令行下安装 libqt4-sql-mysql(sudo apt-get install libqt4-sql-mysql),然后将 /usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so拷贝到你的QtSDK sqldrivers目录下,我的是在/QtSDK/Desktop/Qt/481/gcc/plugins/sqldrivers,里面同时还有qsqlite.so,所以刚才会说只能找到qsqlite ...
Qt 访问mysql
1.#include <QtSql/QMYSQLDriver>去掉 然后重新运行程序 根据提示 2.如果找不到QMYSQL驱动,那么你需要先编译这个驱动。先到Plugins/SqlDriver下看看有没有qsqlmysql.*与qsqlmysqld.*的动态库文件。如果没有,说明你没有编译mysql驱动插件。如果有但是连不上驱动,说明你的动态库没有放在程序的目录下(...
Qt5 linux 无法连接sqlite
先安装好sqlite,然后去系统软件源中找qt自带的sqlite的驱动安装。Linux平台下解决Qt5连接mysql数据库的问题:输入sudoapt-getinstalllibqt5sql5-mysql解决,这种方法只能解决Qt是用sudoapt-getinstallqt-sdk命令装的低版本的Qt5(如5、2、x)缺少MySQL驱动问题,如果你的Qt5版本为5、7、X,那么就不能...
QT怎么ssh连接mysql数据库
在界面中点击【新建】按钮,在Mysql下填写Mysql数据库的ip地址、用户名、密码、端口(默认在3306)就好,数据库名称。这里跟普通的连接数据库的方法一致。这个时候读者可以点击一下【测试连接】,这个时候点击测试连接去连接数据库是不会成功的,因为数据库配置了SSH访问。如下图:配置完成Mysql信息后,在旁边...
如何在QT中使用MYSQL SSL连接
如何在QT中使用MYSQL SSL连接 windows 下登陆mysql 命令行,(1)进入cmd (2) cd mysql 安装路径/mysqlserver5.6/bin (3) 使用命令mysql -u root -p 然后根据提示输入密码 进入命令行 select user(); //显示当前用户