首先,说一下我当时的问题,控制台显示有QMYSQL驱动,但是就是检测不到报错没有驱动,数据库连接不成功。
一开始是一直在复制粘贴.dll和.lib, 但是还是不行,一直试一直拖好久都没解决这个问题。因为我sqlite可以用,所以也不着急搞MySQL,但是每次一有时间,看到MySQL不能使就不舒服,就像再调一调,总想着这次可能就调出来了...
最近又有时间了,我又来调它们了,其实我之前看到过网上有提过说很可能是位数不一样,必须同是32或者64的,但是我每次都想着我电脑是64bit的,我下软件一直都是下64的啊,肯定没有32... 打脸了,今天试了好几个方法还是不行,我就想要不我查查看我的MySQL和qt是多少的,做为小白,这个问题我还百度了一下,其实一直不差除了坚信一定是64之外还有一个就是我不会查看觉得麻烦,因为查MySQL的话会用到cmd,我的cmd有问题不能用,反正就一大堆问题堆积起来了,但是今天都解决了,开心,我的cmd好了,数据库连接好了,数据库密码我也改好了...虽然很慢,但是解决一个一个问题真的很有成就感,也很开心,我想,这可能就是我为什么想当程序员的原因吧。接下来就展示一下我这个小问题的解决方法。
MySQL:5.7 64bit
Qt Creator:5.10.0 32bit
1.第一步,报错,没有检测到驱动,原因是64位的MySQL和32位的Qt不匹配
2.先查看Qt,打开软件,点击欢迎如图可以查看是多少bit,我的是32bit
3.再查看MySQL版本,win+r cmd 使用mysql -V查看
4.其实到这里我心里拔凉,第一想法就是完了,我得卸载重新安装好麻烦啊,峰回路转,我再网上查到了一个方法,但是这是好多年前的一个帖子了,官方很多版本都没有了,我下了一个接近的版本试了试,成功了!!!
转战我的第二大步---32位Qt连接64位Mysql驱动的问题解决方案
Qt5.2及以上版本如果使用的是mingw编译器,Qt只有32位的。连接64位的mysql,即使把mysql安装目录下的libmysql.dll放到qt安装目录bin路径下,也是无法连接数据库。网上给出的做法是下载Qt对应版本的源码,重新编译。这种方法复杂繁琐,且容易编译失败。先发现一种简便方法,就是mysql的官网给出了连接32位的驱动。(因为我笔记主要是用来自己看,所以摘抄了一位博主的,因为这段话真的每一句都戳中了的遇到的困难和尝试,所以我就不修改了直接拿过来。解决Qt5.2及以上版本无法连接64位mysql问题_qt mingw64链接失败-CSDN博客)
1)https://dev.mysql.com/downloads/ 跳转到官方网页
2)点击社区
3)点击Archives
4) 不一定非得是这个版本,因为有时候有的版本是没有的,我当时借鉴的选的是6.1.6,但是没有这个所以选了5.7.43试了试,成功了,大家可以选择大概相近的试一试
5)
6)下载后解压
7)把lib文件夹下面的libmysql.dll复制
8)粘贴到qt的bin目录下
9)我的到这里就可以连接成功了!!! 撒花撒花!!!
标签:Qt,32,MySQL,Driver,64,版本,mysql From: https://www.cnblogs.com/zuzu/p/18001887