连接、安装mysql数据库方法详解+车辆管理系统制作,附带源码

最简单教程,不用看文字,直接看视频:http://www.bilibili.com/video/av21053815?share_medium=android&share_source=copy_link&bbid=D04BBDA1-8C06-412C-997D-A429F7C4BE8F14595infoc&ts=1528346164693



做一个数据库界面,一共需要三个软件,包括Qt+Navicat premium+MySql三个软件。这三个东西都要安装在自己使用的电脑上面。Qt的安装包使用的是本人百度云盘里面的安装包Qt5.4.2(这个安装包安装了就可以直接用,很方便,一般建议整个安装包全部安装上去,因为我一直都是全部安装的,不全部安装,我不知道效果是什么样子的,安全起见,全部装),Navicat premiu 12这个软件是在网上直接下载的,需要进行破解,参考链接是:

https://blog.csdn.net/qq_21205435/article/details/78902052,反正你去网上找,多的是经验贴,这个软件的使用包括下载安装包,安装,破解,并且它创建数据库的方法是http://www.cnblogs.com/sshoub/p/4321640.html。mysql软件使用的是.msi形软件,使用的是百度云盘里面的mysql5.7.17.msi版本,要用云盘里面有现成的,安装参考:https://blog.csdn.net/kerafan/article/details/78002379和http://www.cnblogs.com/sshoub/p/4321640.html和http://www.cnblogs.com/whaben/articles/6687544.html。有以下的几个步骤。
QT连接Mysql操作


一:准备一个数据库


数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。说实际一点,比如你要做一个登录、注册功能就需要用到数据库。登陆的时候检查用户名密码是否正确,注册时判断用户名是否已经存在,不存在再插入自己的信息等等,这些方面都需要用到。


①安装mysql:直接百度搜索下载,按照要求安装即可。


②安装Navicat:Navicat就是将mysql操作(建表、增删查改等)变为可视化操作,像我等菜鸟连基本的sql语句都不懂的,没有一个可视化操作怎么能行。


③我们用Navicat创建一个sql连接:点击连接选择MySql,连接名随便取,


主机ip:就是我们将要连接到那个主机上,这里由于我们的在自己的电脑装的Mysql,所以填localhost或者127.0.0.1,


端口:3306不改。


用户名:就是你安装mysql时用的,不知道是什么就填root


密码:如果你没改密码,默认为空。


点击连接测试,如果成功就确定。失败的话看什么报错,百度错误,寻找解决办法!


④双击刚刚我们创建的连接,启动它,颜色会变绿。然后右键新建一个数据库起一个名,字符集选个根据需要选,我选的是utf8


⑤我们展开创建的数据库选中表,右键新建一个表,定义一些自己的量,具体操作百度。


⑥补充:如果在编辑器完美连接数据库,而打包后出现无法连接的问题,那么多半是你的数据库libmySQL.dll没有打包进你的程序文件夹。这个dll在你的安装目录下直接搜索就可以找到。然后复制到你的打包文件的exe同级目录就可以了。


二:QT 连接


.pro中添加 QT +=sql


头文件添加:#include <QtSql>#include <QSqlDatabase>


!!注意事项:如果报错:QSqlDatabase: QMYSQL driver not loaded


QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7请参照这里


直接上代码:


#define IP           "127.0.0.1" 

#define UserName     "root" 

#define Password     ""

 #define DatabaseName "ironthreshold" ​ ​ 

ThresholdFromSql::ThresholdFromSql(QObject *parent) : QObject(parent) 

{   db= QSqlDatabase::addDatabase("QMYSQL");   

db.setHostName(IP);                       //127.0.0.1也是一样的,属于本地地址   

db.setUserName(UserName);                         //登陆MYSQL的用户名   

db.setPassword(Password);                         //你自己登陆的密码  

 db.setDatabaseName(DatabaseName);                 //登陆数据库的名称   

if (!db.open())   

{//打开数据库连接       

QMessageBox::critical(0, QString::fromLocal8Bit("连接提示"),                                 

QString::fromLocal8Bit("无法建立数据库连接,请检查网络!"),                                 

QString::fromLocal8Bit("确定"));       

    return;   }   

else   {       QMessageBox::critical(0, QString::fromLocal8Bit("连接提示"),                                 QString::fromLocal8Bit("MySql Content Success!"),                                 QString::fromLocal8Bit("确定"));       QString sclectstr="select sensor_id,speed1,speed2,speed3 from Windspeed";//sql查询语句从风速表中查询一些阈值数据       sclectfrommysql_fs(sclectstr);       sclectstr="select sensor_id,speed1,speed2,speed3 from Stress";       sclectfrommysql_yl(sclectstr);       sclectstr="select sensor_id,speed1,speed2,speed3 from Shock";     } } ​ void ThresholdFromSql::sclectfrommysql_fs(QString sclectstr) {   QSqlQuery query;   bool success = query.exec(sclectstr);   if(!success){       qDebug() << "查询user失败";return;   }   else   {       // 将查询的结果集指针调整到最开始       query.seek(-1);       int num=sizeof(query); //总数据个数       num=num/query.numRowsAffected();//列数目       mydata oneFSdata;       while(query.next())//一行(循环行)       {           oneFSdata.sensor_id=query.value(0).toInt();           oneFSdata.first_alert_threshold=query.value(1).toDouble();           oneFSdata.second_alert_threshold=query.value(2).toDouble();           oneFSdata.third_alert_threshold=query.value(3).toDouble();           Alldata_Fs.append(oneFSdata);       }       //emit finishsclect()   } } ​



这段文字参考了链接:https://blog.csdn.net/qq_22824481/article/details/79645927


把代码都写好了,还不够,需要找一个配套有用的软件(动态链接库)libmysql.dll,放进QT5.4.2的bin文件里面。这样就可以完全的连接了。
实际上,如果你需要使用mysql数据库的时候,你只要安装了qt和mysql两个软件就可以操作了。navicat premium12这个软件,只不过是用来把你做的操作可视化来给别人看的。有它没它其实都没什么,没有也可以,就是我们看不懂mysql数据库的内容,才需要这个navicat软件来显示给我们看我们做了什么操作。
1.https://blog.csdn.net/qq_27093465/article/details/53411667?_u_u_u=0.16632314186827735   mysql数据库操作的命令行介绍

猜你喜欢

转载自blog.csdn.net/wise18146705004/article/details/80604943