当前位置:   article > 正文

Qt中连接mysql

Qt中连接mysql

1、安装mysql,workbench,为mysql添加环境变量

2、安装Qt带src,然后到如下目录,找到mysql.pro(建议做个副本先)

http://D:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\mysql

mysql.pro

注意路径的 \ / 和双引号的使用,搞不定就照抄

  1. TARGET = qsqlmysql
  2. HEADERS += $$PWD/qsql_mysql_p.h
  3. SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp
  4. #注释掉
  5. #QMAKE_USE += mysql
  6. OTHER_FILES += mysql.json
  7. PLUGIN_CLASS_NAME = QMYSQLDriverPlugin
  8. include(../qsqldriverbase.pri)
  9. #这个主要是添加.h依赖文件使用
  10. INCLUDEPATH+="C:/Program Files/MySQL/MySQL Server 8.0/include"
  11. #添加依赖的.lib文件
  12. LIBS+="C:/Program Files/MySQL/MySQL Server 8.0/lib/libmysql.lib"
  13. #生成你所需要的dll存放目录
  14. DESTDIR="D:/MYSQL/lib"
  15. #路径换成自己的mysql路径
qsqldriverbase.pri
  1. QT = core core-private sql-private
  2. # For QMAKE_USE in the parent projects.
  3. #include($$shadowed($$PWD)/qtsqldrivers-config.pri)
  4. #include(./qsqldriverbase.pri)
  5. include(./configure.pri)
  6. PLUGIN_TYPE = sqldrivers
  7. load(qt_plugin)
  8. DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII

 3、编译得到两个dll,

由于在mysql.pro中已经定义目标目录,DESTDIR="D:/MYSQL/lib"

复制到

D:\Qt\Qt5.13.2\5.13.2\mingw73_64\plugins\sqldrivers

4、 打开mysql安装目录下lib目录

 复制libmysql.dll到Qt如下bin目录

5、WorkBench创建database和table,Qt项目写代码如下

  1. void Mysql::on_ConnectButton_clicked()
  2. {
  3. db = QSqlDatabase::addDatabase("QMYSQL");
  4. db.setHostName("127.0.0.1");
  5. db.setPort(3306);
  6. db.setDatabaseName("jetring");
  7. db.setUserName("root");
  8. db.setPassword("123456");
  9. if(db.open())
  10. {
  11. ui->textEdit->append("Mysql connect success!");
  12. }
  13. else
  14. {
  15. ui->textEdit->append("Mysql connect failed.");
  16. ui->textEdit->append("Error: " + db.lastError().text());
  17. }
  18. }

连接成功!

PS:我的版本

感谢如下文章作者:

https://www.cnblogs.com/lpxblog/p/6698255.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/457538
推荐阅读
相关标签
  

闽ICP备14008679号