找回密码
 立即注册
收起左侧

QT5.5.1连接Mysql5.5一直处于驱动加载失败的问题

12
回复
14359
查看
[复制链接]
累计签到:5 天
连续签到:1 天
来源: 2016-6-1 10:24:27 显示全部楼层 |阅读模式
6Qter豆
本帖最后由 walent 于 2016-6-1 19:09 编辑


我写了一个串口读取和数据库连接的QT程序,打开串口的同时会自动连接数据库,但是不知道为什么一直找不到驱动!我用的QT版本是5.5.1。驱动都有,但是一直显示加载不了,我在我同学的电脑上运行同一个程序而且QT版本也是一样的,他的可以连接数据库,但是我的连接不到。
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
connect is faile! "Driver not loaded Driver not loaded"

上面是出现的错误提示。
网上那些什么把数据库里面的驱动移动过去的方法根本没用,这里已经有驱动了,应该也不用再按照网上说的自己再写个驱动了吧。现在完全不知道怎么连接数据库。求大神解答!!!!!!!

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册
回复

使用道具 举报

累计签到:27 天
连续签到:1 天
2016-6-1 11:18:35 显示全部楼层
你把别人编译的驱动位置放的不对,放到你Qt目录的sqldrivers这个文件下面。除了sqlite都是需要自己去编译的数据库驱动的。
回复

使用道具 举报

累计签到:615 天
连续签到:1 天
2016-6-1 13:28:05 显示全部楼层
将MySQL安装目录下的libmysql.dll拷贝到Qt安装目录下的bin目录中  这一步做了吗?
回复

使用道具 举报

累计签到:5 天
连续签到:1 天
2016-6-1 15:34:48 显示全部楼层
qq1043068972 发表于 2016-6-1 13:28
将MySQL安装目录下的libmysql.dll拷贝到Qt安装目录下的bin目录中  这一步做了吗? ...

做了~并没有什么变化!感觉不是这个的问题。

点评

如果是copy对了,位置也对了,那得编译驱动了,然后放到bin下了。但是理论上不应该啊,我的是qt5.4.1 mysql5.6 只把dllcopy过去就ok了,没有任何异常  详情 回复 发表于 2016-6-1 20:34
回复

使用道具 举报

累计签到:5 天
连续签到:1 天
2016-6-1 15:35:54 显示全部楼层
hjbqly 发表于 2016-6-1 11:18
你把别人编译的驱动位置放的不对,放到你Qt目录的sqldrivers这个文件下面。除了sqlite都是需要自己去编译的 ...

我没有下载别人的驱动,这个驱动不是QT5安装的时候就已经有了的么?
回复

使用道具 举报

累计签到:27 天
连续签到:1 天
2016-6-1 18:33:08 显示全部楼层
walent 发表于 2016-6-1 15:35
我没有下载别人的驱动,这个驱动不是QT5安装的时候就已经有了的么?

Qt自带的只有sqlite的驱动,其他数据库都要自己编译驱动,或者用别人编译的也行
回复

使用道具 举报

累计签到:5 天
连续签到:1 天
2016-6-1 19:08:32 显示全部楼层
hjbqly 发表于 2016-6-1 18:33
Qt自带的只有sqlite的驱动,其他数据库都要自己编译驱动,或者用别人编译的也行 ...

QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
这个是返回来的信息,是有QMYSQL数据库的

点评

印象中QT5的话,mysql不用编译驱动了现在了,  详情 回复 发表于 2016-6-1 20:10
回复

使用道具 举报

累计签到:615 天
连续签到:1 天
2016-6-1 20:10:54 显示全部楼层
walent 发表于 2016-6-1 19:08
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
这个是返回来的信 ...

印象中QT5的话,mysql不用编译驱动了现在了,
回复

使用道具 举报

累计签到:615 天
连续签到:1 天
2016-6-1 20:34:34 显示全部楼层
walent 发表于 2016-6-1 15:34
做了~并没有什么变化!感觉不是这个的问题。

如果是copy对了,位置也对了,那得编译驱动了,然后放到bin下了。但是理论上不应该啊,我的是qt5.4.1 mysql5.6 只把dllcopy过去就ok了,没有任何异常
回复

使用道具 举报

累计签到:5 天
连续签到:1 天
2016-6-2 08:09:39 显示全部楼层
qq1043068972 发表于 2016-6-1 20:10
印象中QT5的话,mysql不用编译驱动了现在了,

网上很多都是这么说的,但是网上那些都没什么用……解决不了……所以才来问的~
回复

使用道具 举报

累计签到:5 天
连续签到:1 天
2016-6-2 08:10:56 显示全部楼层
qq1043068972 发表于 2016-6-1 20:34
如果是copy对了,位置也对了,那得编译驱动了,然后放到bin下了。但是理论上不应该啊,我的是qt5.4.1 mys ...

dll copy过去也没什么用,而且我的安装包和我那个同学的安装包是一样的,我在想是不是环境变量有问题……
回复

使用道具 举报

累计签到:24 天
连续签到:1 天
2016-6-2 10:24:33 显示全部楼层
本帖最后由 wylnii 于 2016-6-2 10:25 编辑

确定你装的mysql是32位的,64位的不能用,将32位的dll复制到相关目录
回复

使用道具 举报

累计签到:5 天
连续签到:1 天
2016-6-2 14:38:53 显示全部楼层
wylnii 发表于 2016-6-2 10:24
确定你装的mysql是32位的,64位的不能用,将32位的dll复制到相关目录

这个没仔细注意,但是数据库我经常用啊,在学QT之前都有用过数据库
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了