• 4856阅读
  • 5回复

求助mingw上qt连接mysql问题 [复制链接]

上一主题 下一主题
离线kalxd
 

只看楼主 倒序阅读 楼主  发表于: 2011-11-24
主要参照这篇文章进行操作。
http://blog.romebuilder.com/2010/07/58/

用的是最新的MySQL Community Server,用msi安装包,不是zip。mysql已经成功安装并启动,在服务中看到了它已启动,同时也能打开mysql并进入。
上网搜了下编译驱动方法,大部分方法与上面文章大同小异,最后也成功编译出了驱动,并把它放在%QDIR%/plugins/sqldrivers目录下。
[ ]$ls -al
total 4026
drwxr-xr-x  2 H_Ley Administrators    4096 Nov 24 20:18 .
drwxr-xr-x 12 H_Ley Administrators    4096 Oct 26 22:48 ..
-rw-r--r--  1 H_Ley Administrators    2168 Sep  2 01:48 libqsqlite4.a
-rw-r--r--  1 H_Ley Administrators    2178 Sep  2 01:48 libqsqlited4.a
-rw-r--r--  1 H_Ley Administrators    2210 Nov 24 20:09 libqsqlmysql4.a
-rw-r--r--  1 H_Ley Administrators    2220 Nov 24 20:08 libqsqlmysqld4.a
-rw-r--r--  1 H_Ley Administrators    2178 Sep  2 01:48 libqsqlodbc4.a
-rw-r--r--  1 H_Ley Administrators    2182 Sep  2 01:48 libqsqlodbcd4.a
-rwxr-xr-x  1 H_Ley Administrators  478720 Sep  2 01:48 qsqlite4.dll
-rwxr-xr-x  1 H_Ley Administrators 1736365 Sep  2 01:48 qsqlited4.dll
-rwxr-xr-x  1 H_Ley Administrators   61952 Nov 24 20:09 qsqlmysql4.dll
-rwxr-xr-x  1 H_Ley Administrators  680940 Nov 24 20:08 qsqlmysqld4.dll
-rwxr-xr-x  1 H_Ley Administrators  163840 Sep  2 01:48 qsqlodbc4.dll
-rwxr-xr-x  1 H_Ley Administrators  972188 Sep  2 01:48 qsqlodbcd4.dll
但用文章里的例子时并没有打开数据
请问我缺少什么步骤,或者哪个步骤出错?还需要其它信息吗?
离线XChinux

只看该作者 1楼 发表于: 2011-11-24
首先确定是否正确加载了插件,用QSqlDatabase::drivers ()看看有用的驱动到底有哪些。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线kalxd

只看该作者 2楼 发表于: 2011-11-25
回 1楼(XChinux) 的帖子
warning: QSqlDatabase: QMYSQL driver not loaded

warning: QSqlDatabase: available drivers: QSQLITE QODBC3 QODBC

warning: what's going on?

mysql没有加载,请问如何加载它?
离线XChinux

只看该作者 3楼 发表于: 2011-11-25
好像叫libmysql.dll吧?忘记了, 这个dll在你运行环境里的PATH路径里面吗?
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线kalxd

只看该作者 4楼 发表于: 2011-11-25
回 3楼(XChinux) 的帖子
把%QDIR%/plugins/sqldrivers添加到PATH吗?这样做也没用。
离线kalxd

只看该作者 5楼 发表于: 2011-11-25
问题解决了。
参考这篇文章:http://mobile.51cto.com/symbian-271131.htm
把mysql安装目录下的lib/libmysql.dll复制到%QDIR%/plugins/sqldrivers/目录即可,因为sqlmysql4.dll qsqlmysqld4.dll 都依赖于libmysql.dll。
感谢XChinux的回复。
回复: 的回复: 回复: 的回复
快速回复
限100 字节
 
上一个 下一个