1.首先当然是要有VS2008+Qt4.7的开发环境。
2.安装MySQL,最好是4以后的版本,安装MySQL时要勾住“C Include Files 和 Lib Files”选项,这样才能装上MySQL的头文件和链接库。(或者选择FULL安装)
3.由于MySQL先天的路径问题(就是它的路径里面有空格),我们需要把它的include和lib目录复制出来,放在一个没有空格的目录下。
在C盘建立Mysql5.5文件夹,把include和lib放进去。
4. 打开Qt Command Prompt 窗口,输入命令:
cd C:\Qt\4.7.4\src\plugins\sqldrivers\mysql\
5. 输入命令:
qmake -o "INCLUDEPATH+=C:\Mysql5.5\include" "LIBS+=C:\Mysql5.5\libmysql.lib" mysql.pro
这里面的路径就是第3步里面创建的目录
6.输入命令: nmake release debug
到这里,其实MySQL的驱动已经编译完了,但是可能编译出来的动态链接库没有自动拷贝到 C:\Qt\4.7.4\plugins\sqldrivers 中去。没关系,我们手动拷贝如下:
【拷贝1】将编译生成的mysql驱动
C:\Qt\4.7.4\src\plugins\sqldrivers\mysql\release和
C:\Qt\4.7.4\src\plugins\sqldrivers\mysql\release\debug 里面把qsqlmysql4.dll、qsqlmysql4.lib、qsqlmysqld4.dll、qsqlmysqld4.lib拷到 c:\Qt\4.7.4\plugins\sqldrivers 里面就行了。
【拷贝2】将libmysql.dll拷贝到C:\Qt\4.7.4\bin。
下面可以进行Qt数据库的测试例子了:
int main(int argc, char *argv[])
{
QApplication
app(argc, argv);
qt_mysql w;
QTextCodec::setCodecForTr(QTextCodec::codecForName("gbk")); //设置tr()编码。
QSqlQueryModel
*model;
QTableView *table=new QTableView;
QSqlDatabase db =
QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("10.3.2.84"); //数据库服务器
db.setDatabaseName("petct"); //数据库名
db.setUserName("admin"); //登录名
db.setPassword("admin"); //密码
if(db.open())
{
QSqlQuery
query;
query.exec("update
patient_basic_info set sex ='m 'where patient_id = 3");
query.exec("DELETE
FROM patient_basic_info where patient_id = 3");
query.exec("SELECT patient_id , patient_name,ID_card_no,sex
FROM patient_basic_info");//name为属性名;
query.next();
QString name =
query.value(1).toString();
w.ui.patient_name_text->setText(name);
model=new QSqlQueryModel;
model->setQuery(query);
table->setModel(model);
}
else
{
// 数据库打开失败,显示数据库返回的失败信息
QMessageBox::critical(0,QObject::tr("数据库打开失败"),db.lastError().text());
}
w.show();
QApplication::connect(&app, SIGNAL(lastWindowClose()),
&app, SLOT(quit()));
return app.exec();
}
附件使用,
1、将libmysql.dll拷贝到C:\Qt\4.7.4\bin 这样Qt驱动可以调用mysql,打开数据库
2、将qsqlmysql4.dll、qsqlmysql4.lib、qsqlmysqld4.dll、qsqlmysqld4.lib拷贝到C:\Qt\4.7.4\plugins\sqldrivers 这就是Qt mysql的驱动
分享到:
相关推荐
编译运行Qt连接MySQL数据库程序的时候,控制台会报如下错误:QSqlDatabase: QMYSQL driver not loaded,原因在于Mysql驱动libqsqlmysql.so未能成功安装,linux版本下只安装了sqlite驱动,Mysql驱动需根据安装数据库...
Qt6.5.0MySQL驱动文件已编译版本,直接拿来拷贝进驱动文件夹就能用。不需要繁琐的编译过程。下面为资源文件树状图。 ├─mingw_64QMySQL驱动文件 │ qsqlmysql.debug │ qsqlmysql.dll │ ├─msvc2019_64QMySQL...
Qt5.2编译的MySQL驱动(最新版:5.6) 编译详解参考:http://blog.sina.com.cn/s/blog_a6fb6cc90101gzm1.html
windows 平台下的qt 连接mysql数据库所需的驱动。
linux下mysql的安装卸载和qt-x11的mysql驱动编译
qt-mysql驱动编译教程及驱动,网上找的教程都太麻烦,而且没一个成功的,自己弄了一个教程,欢迎使用。
Qt 添加MySQL驱动教程(成功版)
在windows环境下的Qt 连接 MySQL并编译驱动
详细介绍了window下qt编译mysql驱动,以及注意事项, 希望对程序员有所帮助
Qt5.12.9,mingw73_32,MySQL驱动编译插件 Qt新版本不再提供MySql的驱动,需要自行编译, 将文件放入对应的Qt安装路径即可: .\Qt5.12.9\5.12.9\mingw73_32\plugins\sqldrivers Qt5.12.9,mingw73_32,MySQL驱动编译插件 ...
qt5.7.0源码编译的mysql(32位)驱动,需要学习和研究的朋友可以直接下载使用 qt5.7.0源码编译的mysql(32位)驱动,需要学习和研究的朋友可以直接下载使用 qt5.7.0源码编译的mysql(32位)驱动,需要学习和研究的...
分别编译pc机和ARM开发板的QT下的mysql驱动,并且在ARM开发板上访问数据库成功。
使用Qt和mysql编程时,由于qt本身并不支持Mysql驱动,故需要自行编译,本资料是已编译好的qt连接Mysql的驱动,只需将资料解压到/qt/plugins/sqldrivers下即可。
Qt5.13.2+msvc2017 32位mysql驱动编译好的库
由于qt6.0以上版本不提供mysql,而且无mysql.pro文件来编译生成mysql的驱动文件,所以编者这里整理了自己生成的dll文件供大家使用。
如果你安装的QtSDK,没有src目录,自己编译Mysql驱动时需要下载qt源码。 你可以自己参考我提供的博客文章根据自己的版本编译mysql驱动; 也可以直接使用我编译好的,如果你也是qt4.7.4。
Qt 5.9.3 MySQL和PostgreSQL本地编译驱动,Qt自带的的MySQL和PostGreSQL驱动在程序出包后,报错:“Driver not loaded”,使用本地源码编译生成的驱动替换后即可正常连接数据库。
Ubuntu下高版本的Qt,默认的mysql驱动不能用,需要下载Qtmysql源码进行编译驱动,我这个自己编译好了,大家可以拿来直接用,因为源码很占空间,要是非要自己编译可以参考这个... Ubuntu下高版本的Qt,默认的mysql驱动不...
刚开始也不会弄,找了好多资料才整出来的,呵呵 这个是自己编译的,QT是qt-sdk-win-opensource-2009.05.exe(NOKIA出的) 编译器为Mingw MYSQL是5.1版本 其它环境还没测试过,不好意思