vs2019 的qt项目数据库连接

 前提打开了已经有的mysql数据库并运行,并且数据库中新建了一个数据库,这里我的数据库名称为”qtqq“

完成后新建vs2019的qt项目,在main函数中将上面的代码复制进去若出现”成功连接则成功“,

注意:数据库名称,密码等每个人不一样

#include "testMysql.h"
#include <QtWidgets/QApplication>
#include<QSqlDatabase>
#include <qdebug.h>
#include<QMessageBox>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
   /* testMysql w;
    w.show();*/
	qDebug() << QSqlDatabase::drivers();
	QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
	db.setDatabaseName("qtqq");				// 设置数据库名称
	db.setHostName("localhost");			// 主机名
	db.setUserName("root");					// 数据库,用户名
	db.setPassword("123456");				// 数据库,密码
	db.setPort(3306);

	if (db.open())
	{
		QMessageBox::warning(NULL, QString::fromLocal8Bit("提示"),
			QString::fromLocal8Bit("成功连接数据库!"),QMessageBox::Yes);
		return -1;
	}
	else
	{
		QMessageBox::warning(NULL, QString::fromLocal8Bit("提示"),
			QString::fromLocal8Bit("失败连接数据库!"), QMessageBox::Cancel);
		return 0;
	}


    //return a.exec();
}

若出现则表明没有驱动,需要编译驱动

打开所下载qt目录

C:\Qt\Qt5.14.1\5.14.1\Src\qtbase\src\plugins\sqldrivers\mysql

双击mysql.pro文件QtCreator运行,编译器选择msvc2017 64bit(注意自己编译器选的哪一个就最后复制到哪一个里面)

出现编译报错,未定义的mysql

解决方法:指定mysql链接库

(4)将生成路径(mysql/lib)下刚刚生成的驱动文件,选中生成的qsqlmysql.dllqsqlmysql.dll.debug 驱动文件

拷贝至msvc2017的驱动文件夹,替换原本的驱动,如下图:

注意: 部分的mysql驱动qsqlmysql.dll及qsqlmysqld.dll生成路径在相应盘符的 plugins\sqldrivers目录下,如果项目是在C盘编译的,那么路径就是: C:\plugins\sqldrivers

)

C:\Qt\Qt5.14.1\5.14.1\msvc2017_64\plugins\sqldrivers 

重新运行vs程序:

出现MYSQL但是还是连接不上:

加载驱动,将mysql解压目录lib目录下的libmysql.dll拷贝至msvc2017的bin目录下:

注意的是如果你的MYSQL是64位你使用的Qt就必须是64位的编译器,反之3
2位的Mysql你就必须使用32位的编译器。

登录数据库,mysql -uroot -p回车即可

 进入mysql,输入命令:show variables like '%version_%';

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值