Qt4连接mysql成功
之前一直在做嵌入式方面的开发,用的都是sqlite数据库,由于项目要求,这次改为mysql数据库,不过qt是不自带mysql数据库驱动的,需要自己手动编译。我上网查找编译方法,可是别人的qt要么是linux环境下的,要么版本不一样。不过还是在网上找到了一个别人已经编译好了的驱动,现跟大家分享下。QT版本:说明:其实4.8也可以用,在别人那尝试成功。编译完成的
之前一直在做嵌入式方面的开发,用的都是sqlite数据库,由于项目要求,这次改为mysql数据库,不过qt是不自带mysql数据库驱动的,需要自己手动编译。
我上网查找编译方法,可是别人的qt要么是linux环境下的,要么版本不一样。不过还是在网上找到了一个别人已经编译好了的驱动,现跟大家分享下。
QT版本:
说明:其实4.8也可以用,在别人那尝试成功。
编译完成的mysql驱动:
http://download.csdn.net/detail/jcy8126/5172658
将上面的文件解压后,取出里面四个文件放置在:C:\QtSDK\Desktop\Qt\4.8.0\mingw\plugins\sqldrivers(这是我的目录),注意,我装的是Qt SDK版本的。
Qt测试MySql:
#include "mainwindow.h"
#include <QtGui/QApplication>
#include <QtSql>
#include <QLabel>
#include <QSqlDatabase>
bool createConnection()
{
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setUserName("root");
db.setPassword("123");
if (!db.open())
return false;
db.close();
return true;
}
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QLabel* label = new QLabel;
label->setWindowTitle("Qt_MySql");
if (createConnection())
label->setText("connection success...");
else
label->setText("connection failed...");
label->show();
return a.exec();
}
注意还需要在pro文件中添加 QT += sql
如果显示 connection success...那么证明你成功的连接了。
如果此时你的测试代码提示connection failure,那么你可以试试将C:\Program Files\MySQL\MySQL Server 5.0\lib\debug下的(或者C:\Program Files\MySQL\MySQL Server 5.0\lib\)libmysql.lib拷贝到C:\QtSDK\Desktop\Qt\4.8.0\mingw\lib
感谢:
http://blog.csdn.net/gzshun/article/details/8493864
更多推荐
所有评论(0)