Qt连接数据库失败的原因以及常用解决方法

用qDebug() << db.lastError().text();来看错误原因

①先还是检查一下你的数据库名称,用户名,主机名,密码,端口号这些都设置正确没

像我如果把用户名写错就会显示下面这个错误

"Access denied for user 'rot'@'localhost' (using password: YES) QMYSQL: Unable to connect"

数据库连接代码如下

	db.setDatabaseName("qtqq");//数据库名称(和你设置的保持一致)
	db.setHostName("localhost");//主机名
	db.setUserName("root");//用户名
	db.setPassword("sqhxxxx");//密码和我们Mysql的账号密码一致
	db.setPort(3306);//设置端口号

Qt连接数据库失败的原因以及常用解决方法_第1张图片


②看看你的Navicat是否有打开并且连接(我就经常忘记)


③如果显示问题的是缺少驱动程序那就得添加一些文件了
问题显示为:QMYSQL driver not loaded
在这里插入图片描述

解决方法:
mysql安装文件的lib目录下的libmysql.dll和libmysqld.dll复制到Qt5.5中的mingw的bin文件下。



如果后面我再知道其他类型的连接失败原因我再来补充,现在先将就看看吧

你可能感兴趣的:(QT常见编译错误,数据库,qt,mysql)