-
MySQL安装
安装包信息:
下载链接:https://dev.mysql.com/get/Downloads/MySQLInstaller/mysql-installer-community-8.0.30.0.msi
-
Qt编译MySQL驱动
编译MySQL驱动,网上有很多帖子
Qt编译Mysql驱动_Wy_编程的博客-CSDN博客_编译mysql驱动
Qt编译mysql驱动-总结_sikpz的博客-CSDN博客_qt编译mysql
根据安装的MySQL版本,pro文件修改为如下内容
TARGET = qsqlmysql
HEADERS += $$PWD/qsql_mysql_p.h
SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp
#QMAKE_USE += mysql
OTHER_FILES += mysql.json
LIBS += -L$$quote(C:/Program Files/MySQL/MySQL Server 8.0/lib) -llibmysql
INCLUDEPATH += $$quote(C:/Program Files/MySQL/MySQL Server 8.0/include)
DEPENDPATH += $$quote(C:/Program Files/MySQL/MySQL Server 8.0/include)
PLUGIN_CLASS_NAME = QMYSQLDriverPlugin
include(../qsqldriverbase.pri)
编译完成后,在Qt目录同级的地方会有plugins、lib、mkspecs,里面有生成的qsqlmysql相关文件。
-
程序运行报错
程序运行起来以后,QSqlDatabase::drivers() 查看支持的驱动,已经有了QMYSQL,但还是报错:
("QSQLITE", "QMYSQL", "QMYSQL3", "QODBC", "QODBC3", "QPSQL", "QPSQL7")
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
QSqlError("", "Driver not loaded", "Driver not loaded")
解决方法:
拷贝 C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.dll 至Qt\Qt5.14.2\5.14.2\msvc2017_64\bin。如果后期打包程序时,也需要拷贝至软件目录下。
-
QtFtp
使用QtFtp是包含了源码,直接进行使用,没有使用网上多数的方法,将QtFtp编译成为库。
FTP host携带用户名密码
ftp://ftpuser:password@192.168.0.100
ftp.get方法报错
"Downloading file failed:\nFailed to open file."
原因:当前目录和待下载文件不在同一目录。