找回密码
 立即注册
  • QQ空间
  • 回复
  • 收藏

第22篇 Qt5之数据库(二)安装MySQL数据库

yafeilinux 2017-6-16 11:55 39311人围观 yafeilinux原创

版权声明

该文章原创于Qt开源社区(www.qter.org),作者yafeilinux,转载请注明出处!可以到这里讨论该文章。


导语


MySQL是一个非常流行的关系型数据库,也是使用标准的SQL语言进行数据库的操作。在Qt 5中已经提供了对MySQL数据库的默认支持,要想使用该数据库,需要先进行数据库的安装,这里我们介绍下在Windows系统中MySQL数据库的安装和简单使用。后面篇章中会使用SQLite作为默认数据库进行讲解,其中的内容对于MySQL数据库也是适用的。

环境:Windows 7 + Qt 5.8.0(包含Qt Creator 4.2.1)

正文


一、安装MySQL

1http://www.qter.org/portal.php?mod=view&aid=10下载MySQL安装包,具体文件为mysql-5.6.10-win32,如下图所示。

01.png


2、运行下载的安装包,首先出现的是向导欢迎界面。如下图所示。单击Next”按钮。


02.png


3该界面选择同意条款。如图所示。单击“Next”按钮。


03.png



4、下面选择定制安装“Custom”。


04.png


5、这里需要安装所有的头文件和库,点击Development Components前面的下拉箭头,然后选择第二项。

05.png


6、然后选择下面的“Browse…”按钮来更改安装路径,这里设置为C:\MySQL\


06.png



7、填写完路径后单击“OK”按钮回到主页面,单击“Next”按钮来到新的页面,这里单击“Install”按钮开始安装。

07.png



8、等安装完毕后,点击“Finish”按钮完成安装。


08.png



二、在MySQL中创建数据库

1、下面先在安装的MySQL中创建一个数据库,用于后面的测试。首先到MyQSL的安装目录C:\MySQL\bin目录下运行mysqld.exe程序,该程序运行完成后会自动关闭


09.png



2、同时按下键盘上的Win图标和R键,在弹出的对话框中输入cmd

10.png



3、进入终端后输入下面的命令:

cd C:\MySQL\bin

        跳转到安装目录下
11.png


4、然后输入下面的命令:

mysql –uroot –p

        使用root用户来登陆MySQL,因为默认密码是空的,所以这里不用设置密码。运行这行代码会提示Enter password,这时敲回车即可。

12.png



5、登录MySQL以后,使用下面的命令来查看现有的数据库:

show databases

        注意后面有个分号。

13.png



6、可以看到,这里现在已经有几个数据库了,它们是MySQL需要的

14.png



7、这里不使用已经有的数据库,而是新建自己的数据库,下面新建名为mydata的数据库:

create database mydata


15.png



8、再次查看已经存在的数据库,发现显示出了刚才创建的数据库

16.png


9、完成后,输入exit命令退出MySQL


三、测试MySQL程序

1、打开Qt Creator,新建项目,模板选择为“Qt Console Application”,项目名称为“mysqltest”。完成后在mysqltest.pro文件中添加如下代码:

QT += sql

        然后按下Ctrl+S保存该文件。


2、更改main.cpp文件内容如下。

#include <QCoreApplication>

#include <QSqlDatabase>

#include <QDebug>

#include <QSqlQuery>


int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    // 打开MySQL
    QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
    db.setHostName("localhost");
    db.setDatabaseName("mydata");
    db.setUserName("root");
    db.setPassword("");
    if (!db.open())
        qDebug() << "Failed to connect to root mysql admin";
    else qDebug() << "open";

    QSqlQuery query(db);

    //注意这里varchar一定要指定长度,不然会出错
    query.exec("create table student(id int primary key,name varchar(20))");

    query.exec("insert into student values(1,'xiaogang')");
    query.exec("insert into student values(2,'xiaoming')");
    query.exec("insert into student values(3,'xiaohong')");

    query.exec("select id,name from student where id >= 2");

    while(query.next())
    {
        int value0 = query.value(0).toInt();
        QString value1 = query.value(1).toString();
        qDebug() << value0 << value1 ;
    }

    return a.exec();
}


        这里注意,创建表时varchar一定要指定长度。

3、到C:\MySQL\lib中将libmysql.dll文件复制到C:\Qt\Qt5.8.0\5.8\mingw53_32\bin中。运行程序

17.png




结语

这一篇只是介绍了一下MySQL数据库的安装流程和在Qt中的简单使用,只是为了便于需要使用该数据库的读者快速上手。对于不需要使用该数据库的同学,可以跳过本篇,直接学习下面的内容。



源码:mysqltest.zip





37人点赞鲜花

握手

雷人

路过

鸡蛋

刚表态过的朋友 (37 人)

原作者: yafeilinux

yafeilinux和他的朋友们微信公众号二维码

微信公众号

专注于Qt嵌入式Linux开发等。扫一扫立即关注。

Qt开源社区官方QQ群二维码

QQ交流群

欢迎加入QQ群大家庭,一起讨论学习!


公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了