mysql - 安装QMYSQL驱动

标签 mysql sql

基本上,当我尝试连接到 mysql 数据库时,我得到这个错误:

QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3

我尝试安装驱动程序,仅从 http://download.qt-project.org/official_releases/qt/5.0/5.0.2/single/qt-everywhere-opensource-src-5.0.2.zip 中提取 qtbase并将它放在我的 Qt 目录中。我也遵循了 inbush 的指南:http://www.qtcentre.org/threads/45295-using-mysql-plugin这样做:http://puu.sh/3nyG9.png

inbush 说要将 libmysql.dll 从 C:\mysql\bin 复制到 C:\Qt\bin 但我没有在 bin 中找到 libmysql.dll,但我确实在 lib 中找到了它。所以我拿着它去了我的 Qt\bin,发现只有这些文件 http://puu.sh/3nB5m.png所以我想把它放在 Qt\lib 中。我尝试重新运行我的项目,但它仍然给了我同样的错误。我的 .pro 文件确实有 Qt += sql,之后我确实运行了 qmake。我做错了什么?

最佳答案

看看这个post对于 Qt5,还有一组单独的 Qt4 指令(尽管有些相似)。

Qt - How to get|compile Mysql driver

  1. 下载一个版本的MySQL
  2. 下载Qt源代码
  3. 为 Qt 构建 MySQL 插件
  4. 将 DLL 从 MySQL 安装文件夹复制到 Qt 文件夹(参见上面的链接)
  5. 将您为 Qt MySQL 插件构建的 DLL 复制到 Qt 文件夹

很明显,当您分发时,您需要记住将这些 DLL 打包在一起(始终检查 dependency walker)

关于mysql - 安装QMYSQL驱动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17298849/

相关文章:

mysql - 以下两个条件有什么区别? 1. 其中 ABC> ='00' 且 ABC< ='ZZ' 2. 其中 ABC> ='0' 且 ABC< ='Z'

c# - CommandText 属性未正确初始化 (MySqlDataReader)

sql - Go sql从扫描返回多行

sql - 批量插入 Postgres 的最快方法是什么?

mysql - SQL 选择带有 added_date 和 updated_date 的行

mysql - MySQL中如何获取列的最大值

php - 在本地主机中工作时是否可以连接到远程数据库?

php - 验证以确保上传的SQLite数据不重复?

mysql - 在 MySQL 上设置列名和行值

sql - sql查询中where子句中的CASE语句