mysql如何和qt连接
时间:2020-10-30 16:51
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改为 3)测试结果 图1-7 结果表明,QT已经成功读取MYSQL中的student表。 可以在 https://github.com/xtuwang/Qt_Project/tree/xtuwang-patch-1中下载该项目。 以上就是mysql如何和qt连接的详细内容,更多请关注gxlsystem.com其它相关文章! 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 }