今天玩了个qt的mysql应用:发觉出现:
1,QMYSQL driver not loaded的错误:
原因没有装mysqldriver:
解决办法编译mysqld驱动:
利用qt-creator打开qt安装路径下的有关mysql源码工程:(注意安装时一定要选择src安装才会有这些源码)路径是:C:\Qt\Qt5.14.2\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql
编译发现错误:
Project ERROR: Library 'mysql' is not defined.
等:
改写.pro 文件:
TARGET = qsqlmysql
HEADERS += $$PWD/qsql_mysql_p.h
SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp
#QMAKE_USE += mysql
OTHER_FILES += mysql.json
PLUGIN_CLASS_NAME = QMYSQLDriverPlugin
LIBS += "C:\Program Files/MySQL\MySQL Server 5.7\lib\libmysql.lib"
INCLUDEPATH +="C:\Program Files/MySQL\MySQL Server 5.7\include"
#include(../qsqldriverbase.pri)
include(C:/Qt/Qt5.14.2/5.14.2/Src/qtbase/src/plugins/sqldrivers/qsqldriverbase.pri)
编译成功:
然后在:C:\plugins\sqldrivers下找出:qsqlmysql.dll 拷贝并放置在:
C:\Qt\Qt5.14.2\5.14.2\mingw73_64\plugins\sqldrivers下即可:
至此mysql驱动编译问题已经完成
如过还有其他错:可能还需mysql安装目录下C:\Program Files\MySQL\MySQL Server 5.7\lib下的:libmysql.dll,libmysql.lib
拷贝到:C:\Qt\Qt5.14.2\5.14.2\mingw73_64\bin下,
这样所有的问题应该都能解决了,希望对大家有帮助!