问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Eaidk上的qt怎么样连接上位机的mysql?

发布网友 发布时间:2022-04-29 15:43

我来回答

2个回答

懂视网 时间:2022-04-29 20:04

推荐:《mysql视频教程》

由于毕设需要用到QT读取数据库中的数据,并将数据保存至数据库中。花了一天的时间,总算实现了从QT中读取数据库中的数据。网上相关资料很多,但是写得不是很全,中间出现了一些问题,解决起来比较麻烦。所以本文从MYSQL下载、安装,QT连接MYSQL尽可能写详细,若有不足,还请见谅。

1、QT5.5下载

本文使用的 windows32 QT5.5 版本为(qt-opensource-windows-x86-mingw492-5.5.10),可从我的百度云:https://pan.baidu.com/s/1XsVmgd3Qd-J0BHPVOtMVkA下载

若选用高版本,具体安装方法可自行百度。

2、MYSQL5.6下载

由于QT选用的Windows32位,所以MYSQL也应选择Windows32位版本为mysql-5.6.39-win32.zip。(若QT选择的为Windows64位,则MYSQL应选择Windows64位),

可从我的百度云:https://pan.baidu.com/s/1XsVmgd3Qd-J0BHPVOtMVkA下载。

若选用高版本,具体下载方法可自行百度。

3、MYSQL5.6安装

1)将mysql-5.6.39-win32.zip解压至D盘中的MYSQL SERVER,且重命名为mysql-5.6。解压修改后的结果如图1-1所示。

图1-1

2)修改my-default.ini,修改后如图1-2所示

图1-2

3)增加环境变量。右键我的电脑,点属性,点高级系统设置,点环境变量,在PATH中添加 ;D:MYSQL SERVERmysql-5.6in(分号不要忘了,根据自己的安装目录改写),点击确认就行。

4)在C盘中找到cmd.exe,并以管理员权限打开。分别执行以下指令:

d:

cd MYSQL SERVERmysql-5.6in

mysqld -initalize -user=mysql -console

mysqld -install,输入该指令后会打印 Service successfully installed

net start mysql,输入该指令后会打印MySQL服务已经启动成功。至此MYSQL5.6已经安装成功,并且已运行。

4、MYSQL登陆与修改密码

1)在cmd.exe软件中,继续输入SQL相关指令:

mysql -u root -p,输入该指令后出现 Enter password: ,第一次登陆直接回车,进入mysql软件。如图1-3

图1-3

2)增加root的密码。

mysql> set password for root@localhost=password('88888888');

输入该指令后ront 的密码变为88888888。(在编写QT程序中需要用到用户名为root和密码为88888888)

mysql>exit

输入该指令后退出。

重新登陆,输入 mysql -u root -p,输入该指令后出现 Enter password: ,输入88888888。若输入密码不是88888888,则会出现报错,如图1-4所示

图1-4

3)添加测试表,在test库中添加student表,并添加一些数据。具体操作如图1-5所示,至此MYSQL部分已经全部完成。(注意是在test库中添加,对应QT应选择test;

图1-5

5、建立QT程序

1)将mysql-5.6文件lib目录下的libmysql.dll和libmysqld.dll复制到Qt5.5中的mingw493_32的bin文件下。如图1-6所示;

图1-6

2)新建项目,选择QT Console Application。命名项目名为sql_test;

在sql_test.pro文件中添加 QT +=sql

main.cpp改为

 1 #include <QCoreApplication> 2 #include <QSqlDatabase> 3 #include <QSqlQuery> 4 #include <QSqlError> 5 #include <QtDebug> 6 void connect_mysql() 7 { 8 QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL"); 9 db.setHostName("127.0.0.1"); //连接数据库主机名,这里需要注意(若填的为”127.0.0.1“,出现不能连接,则改为localhost)10 db.setPort(3306);   //连接数据库端口号,与设置一致11  db.setDatabaseName("test"); //连接数据库名,与设置一致12  db.setUserName("root");  //数据库用户名,与设置一致13  db.setPassword("88888888"); //数据库密码,与设置一致14  db.open();15  if(!db.open())16  {17  qDebug()<<"不能连接"<<"connect to mysql error"<<db.lastError().text();18  return ;19  }20  else21  {22  qDebug()<<"连接成功"<<"connect to mysql OK";23  }24  QSqlQuery query(db);25  query.exec("select * from student");26  while(query.next()){27  qDebug()<<query.value("name").toString();28  }29 }30 int main(int argc,char *argv[])31 {32 QCoreApplication a(argc,argv);33 connect_mysql();34 return a.exec();35 }

3)测试结果

图1-7

结果表明,QT已经成功读取MYSQL中的student表。

可以在 https://github.com/xtuwang/Qt_Project/tree/xtuwang-patch-1中下载该项目。

热心网友 时间:2022-04-29 17:12

建议可以先不用qt,写个小demo先连接上位机并发送数据,成功了之后再使用qt调用MySQL测试。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小米平板6Max没有网络怎么办 ...wifi和4G网络我都试过都现实吗没有网络。刚买的是正品没有刷机_百度... 2023年淘宝双11招商规则 淘宝国庆狂欢季招商规则及玩法 淘宝年货买不停招商规则 淘宝超来电活动招商规则 ZIP转换成RAR怎么转换? 衢州醉根艺品有限公司怎么样? 徐谷青主要业绩 徐谷青人物介绍 车贷月供计算公式 等额本金还款方式与一次性还本按月付息还款方式的简单贷款计算器(excel表格形式) 求~!消防施工安全方案 现场消防安全 监理单位采取哪些措施 施工现场消防安全管理包括哪些 葫芦星球刚注册就有钱提现吗 说抖音里有8.55为啥提现不了那么多,只能提1元,我刚开始抖音又不懂? 猫眼电影我已经注册了新用户结果买的只有9.9没有1元的,不是说新用户可以享用1元的优惠吗 新人注册一元购网有哪个? 下载手机淘宝新人注册怎么一元买手机? 微信拉黑名单后还能收到他的好友验证消息吗? 吉利汽车海外并购有什么风险? 微信被对方拉黑了,那我发的验证消息对方还能收到吗 微信里把对方删除加拉黑以后还能收到对方发给我的加我好友的验证消息吗? 车载GPS的天线一般安在什么位置 晋宁食人魔 怎样去除铁锅上的锈? 回族人吃不吃鸵鸟肉 鸵鸟肉美国人吃吗 尿酸高能吃鸵鸟肉吗 绿茶是酸性还是碱性? 你好美剧路西法的资源有吗? 通常我们所饮用的绿茶是偏碱性还是偏酸性的? 绿茶属于碱性还是酸性的? 罗西尼YD5543手表怎么换电池? 绿茶属于酸性还是碱性 罗西尼手表电池怎么换 问:绿茶水是碱性还是酸性? 绿茶是碱性食物吗 我的手表是罗西尼SR5570后盖怎么打开换电池? 绿茶是属酸性的还是碱性的啊? 绿茶是碱性的吗 绿茶是酸性还是碱性 茄子有抗癌防衰老的作用,肉末茄子怎么做? 绿茶是碱性还是酸性 碎肉茄子的做法,碎肉茄子怎么做好吃,碎肉茄子 切碎的茄子丁怎么做好吃 健康肉末茄子的做法步骤图,怎么做好吃 如何改变电脑字体大小? win7 打开运行时字体很大,打开爱奇艺影音字体模糊,看图。