MYSQL

一、安装mysql

下载mysql地址MySQL :: Download MySQL Installer

压缩包下载地址MySQL :: Download MySQL Community Server

1.1解压下载好的压缩包文件

1.2环境变量添加mysql安装的bin文件目录的路径

1.3打开文件夹,创建一个新的文件my.ini空白文件

my.ini文件内容为:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir = D:\\mysql-8.4.0-winx64
# 设置mysql数据库的数据的存放目录
datadir = D:\\mysql-8.4.0-winx64\\data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 创建模式
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

1.4通过命令行进入mysql下的bin文件夹

输入:

mysqld --initialize --console

 出现root和密码

1.5安装mysql命令

mysqld --install

如果出现

用sc删除mysql,之后再执行mysqld --install

sc delete mysql

1.6启动mysql

net start mysql

1.7登入mysql

mysql -u root -p

出现以下界面说明登入成功

1.8修改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

修改成功后

exit;(退出mysql)

二、QT使用mysql

main.cpp
#include "mainwindow.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    return a.exec();
}
 
 
 
.h
#include <QMainWindow>
#include<QSqlDatabase>
#include<QSqlQuery>
#include <QDebug>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
    QSqlDatabase dbconn;    //连接数据库
    QSqlQuery query;        //查询操作
};
#endif // MAINWINDOW_H
 
.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    if(QSqlDatabase::contains(QSqlDatabase::defaultConnection))
    {
        this->dbconn = QSqlDatabase::database(QSqlDatabase::defaultConnection);
    }
    else
    {
        this->dbconn = QSqlDatabase::addDatabase("QMYSQL");
    }
   this-> dbconn.setHostName("localhost");//主机名字
   this-> dbconn.setDatabaseName("demo");//数据库名字
   if(this->dbconn.open("root", "2020786750"))
   {
       this->query = (QSqlQuery)this->dbconn; //进行绑定 此后可以使用query对象对数据库进行操作
   }
   else
   {
       qDebug()<<"登入失败";
   }
}

MainWindow::~MainWindow()
{
    delete ui;
}

QT中运行后报错

解决方法 

1 先看看自己的QT目录下有没有qsqlmysql.dll

文件夹路径:D:\Qt\Qt5.14.2\5.14.2\mingw73_64\plugins\sqldrivers

没有的话就需要自己编译mysql源码生成qmysql.dll文件

 2 打开QT安装目录找到QT自带的MySQL生成项目

文件路径:D:\Qt\Qt5.14.2\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql

 

 3 双击打开 .pro 文件修改配置文件mysql.pro

修改为

INCLUDEPATH +=D:\mysql-8.4.0-winx64\include/  # 添加你自己的mysql安装目录下的include文件夹
LIBS += D:\mysql-8.4.0-winx64\lib\libmysql.lib # 添加你的mysql安装目录下的lib文件夹libmysql.lib文件
DESTDIR = ../mysql/mysqlDll    # 设置编译好的qmysql.dll放置的目录,不然你可能不知道会生成在哪。

 注意:一定要用双引号引住MySql头文件和库文件这两个路径,不然后面会出现无法识别到mysql.h的错误

4 修改qsqldriverbase.pri

修改为

 

5 构建

 MySQL如果是64位这里就要选64位,MySQL是32位这里就要选32位。

点击锤子构建

在../mysql/mysqlDll文件夹中生成qsqlmysql.dll libqslmysql.a qsqlmysql.dll.debug三个文件

6 将生成的文件复制到QT对应编译器的安装目录下

文件路径:D:\Qt\Qt5.14.2\5.14.2\mingw73_64\plugins\sqldrivers

7 在mysql安装目录lib中,找到libmysql.dll,拷贝到对应QT编译器的bin目录下

 文件路径:D:\Qt\Qt5.14.2\5.14.2\mingw73_64\bin

 

  • 12
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值