mysql如何和qt连接
mysql和qt连接的方法:首先下载安装mysql和qt;然后在“cmd.exe”软件中,输入SQL相关指令;接着建立QT程序;最后在“sql_test.pro”文件中添加“QT +=sql”即可。
推荐:《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 SERVER\mysql-5.6\bin(分号不要忘了,根据自己的安装目录改写),点击确认就行。
4)在C盘中找到cmd.exe,并以管理员权限打开。分别执行以下指令:
d:
cd MYSQL SERVER\mysql-5.6\bin
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中下载该项目。
以上是mysql如何和qt连接的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

MySQL是一个开源的关系型数据库管理系统。1)创建数据库和表:使用CREATEDATABASE和CREATETABLE命令。2)基本操作:INSERT、UPDATE、DELETE和SELECT。3)高级操作:JOIN、子查询和事务处理。4)调试技巧:检查语法、数据类型和权限。5)优化建议:使用索引、避免SELECT*和使用事务。

可以通过以下步骤打开 phpMyAdmin:1. 登录网站控制面板;2. 找到并点击 phpMyAdmin 图标;3. 输入 MySQL 凭据;4. 点击 "登录"。

MySQL是一种开源的关系型数据库管理系统,主要用于快速、可靠地存储和检索数据。其工作原理包括客户端请求、查询解析、执行查询和返回结果。使用示例包括创建表、插入和查询数据,以及高级功能如JOIN操作。常见错误涉及SQL语法、数据类型和权限问题,优化建议包括使用索引、优化查询和分表分区。

选择MySQL的原因是其性能、可靠性、易用性和社区支持。1.MySQL提供高效的数据存储和检索功能,支持多种数据类型和高级查询操作。2.采用客户端-服务器架构和多种存储引擎,支持事务和查询优化。3.易于使用,支持多种操作系统和编程语言。4.拥有强大的社区支持,提供丰富的资源和解决方案。

Redis 使用单线程架构,以提供高性能、简单性和一致性。它利用 I/O 多路复用、事件循环、非阻塞 I/O 和共享内存来提高并发性,但同时存在并发性受限、单点故障和不适合写密集型工作负载的局限性。

MySQL和SQL是开发者必备技能。1.MySQL是开源的关系型数据库管理系统,SQL是用于管理和操作数据库的标准语言。2.MySQL通过高效的数据存储和检索功能支持多种存储引擎,SQL通过简单语句完成复杂数据操作。3.使用示例包括基本查询和高级查询,如按条件过滤和排序。4.常见错误包括语法错误和性能问题,可通过检查SQL语句和使用EXPLAIN命令优化。5.性能优化技巧包括使用索引、避免全表扫描、优化JOIN操作和提升代码可读性。

MySQL在数据库和编程中的地位非常重要,它是一个开源的关系型数据库管理系统,广泛应用于各种应用场景。1)MySQL提供高效的数据存储、组织和检索功能,支持Web、移动和企业级系统。2)它使用客户端-服务器架构,支持多种存储引擎和索引优化。3)基本用法包括创建表和插入数据,高级用法涉及多表JOIN和复杂查询。4)常见问题如SQL语法错误和性能问题可以通过EXPLAIN命令和慢查询日志调试。5)性能优化方法包括合理使用索引、优化查询和使用缓存,最佳实践包括使用事务和PreparedStatemen

直接从数据库中恢复被删除的行通常是不可能的,除非有备份或事务回滚机制。关键点:事务回滚:在事务未提交前执行ROLLBACK可恢复数据。备份:定期备份数据库可用于快速恢复数据。数据库快照:可创建数据库只读副本,在数据误删后恢复数据。慎用DELETE语句:仔细检查条件,避免误删数据。使用WHERE子句:明确指定要删除的数据。使用测试环境:在执行DELETE操作前进行测试。
