在QT中使用MySQL数据库

来源:互联网 发布:约翰穆勒知乎 编辑:程序博客网 时间:2024/05/15 07:35

QT和mySQL软件的位数最好对应起来,我都是用的win32的软件,软件都可以到对应的官网上自行下载

在工程文件x.pro中添加

具体代码


如果可以正常打开和读取数据库说明链接成功

如果报错

QSqlDatabase: QMYSQL driver not loaded

QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

此时说明QT中自带的Mysql的驱动不依赖,需要重新编译一下

注意前面安装mySQL时路径中一定不能出现空格,所以安装路径最好是自定义安装,然后一级级的文件夹这样,比如C:\MySQL\MySQLServer5.5\类似这样

然后打开QT控制台以下目录是QT的安装源码目录中的mysql的源码,具体路径看下面

cd C:\qt-everywhere-opensource-src-5.5.0\qtbase\src\plugins\sqldrivers\mysql\

然后执行(目录要对照自己的安装目录进行更改)

qmake "INCLUDEPATH+=C:\MySQL\MySQLServer5.5\include" "LIBS+=C:\MySQL\MySQLServer5.5\lib\libmysql.lib" -o Makefile mysql.pro

最后

mingw32-make

如果没有错误,则编译成功,可以在\Src\qtbase\plugins\sqldrivers该文件夹下发现已经生成的动态链接库 qsqlmysql.dll  qsqlmysqld.dll两个文件,将其拷贝到Qt5.5.0\5.5\mingw492_32\plugins\sqldrivers中替代之前QT自带的Mysql驱动.

最后将Mysql的动态链接库 C:\MySQL\MySQLServer5.5\lib\libmysql.lib 库文件拷贝到Qt5.5.0\5.5\mingw492_32\plugins\sqldrivers下

以上都是亲测可用