一、前言
本文视频版教程:mysql安装
所谓数据库,只是一个别人写好的存储数据的软件,并向我们这些使用者提供了对存储数据的操作接口,是我们能够对这些存储的数据进行增删改查而已,所以不必将数据库想的太难。
数据库主要的用途就一个:存储数据,更多介绍可以等待后续本站将会出数据库相关文章,本文只是简单介绍一下它的安装过程以及基本使用。
二、安装MySql
直接点击这里前往官网下载:
直接下载第二个,然后进入下载页面,跳过登录,直接下载:
下载完成后直接双击运行进行安装,等待一段时间后来到下面的安装页面,选择自定义安装:
如果觉得麻烦,推荐直接点击Full
,进行完整安装。
然后选择安装的组件,一般我们只需要两个组件就可以了,其它的如果需要再自行添加:
然后来到下一步,点击执行安装:
安装完成后来到下一个页面,配置mysql服务器:
选择开发者电脑,其它一般默认即可:
然后是选择密码校验方法,默认即可:
然后设置root用户密码,这个密码一定要记住:
后面一直点下一步,即可完成安装。
mysql本身有很多组件,这里我们只安装了两个组件:
MySql Server
:Mysql
数据库的服务器,我们操作数据一般都是连接到该服务器进行操作。MySql Workbench
:可视化操作MySql
数据库中的数据,说人话就是你可以用鼠标点击操作数据库。
其它组件的作用大家也可以参考一下:
MySql Shell
:这个就是通过命令行操作MySql数据库中的数据,学习命令时,推荐用这个,可以快速熟悉各种命令,当然不用这个也可以,直接用windows自带的cmd也能连接操作,只不过可能没这个好用。MySql for visual studio
:VS默认只显示自己的SQL Server
源,所以要想MySql
连接VS
,就需要这个工具Connector/NET
:MySQL官方的.NET
驱动程序,用于结合MySql for visual studio
工具连接VS的。Connector/ODBC
:该组件使用户可以用ODBC (Open Database Connectivity,开放数据库互联)数据库连接Mysql的服务器。比如说,用户可以使用Windows中的应用程序,如微软的 Access,Excel去连接数据库服务器。Connector/J
:java接口组件Connector/C++
:c++接口组件Connector/Python
:phthon接口组件MySql Router
:连接数据库与应用程序的中间组件MySql Documentation
:MySql数据库的使用文档Samples and Examples
:例子
有需要可以在开始菜单中找到安装器,自行安装即可:
最后会启动图形界面,这个程序就是用于操作数据库的,至此安装完成!
三、认识文件结构
MySql
服务器组件的安装位置为安装过程选择的路径,我这里是其默认的安装路径:
该文件夹里面存放的就是我们所有安装的mysql组件。
其中,如果你需要在C/C++程序中调用MySql数据库,就需要该文件夹下的头文件和库:
四、MySql Workbench
MySql Workbench
是官方提供的图形化操作mysql数据的应用程序,使用起来很方便,我们可以在开始菜单中找到并启动它:
然后点击它连接、进入数据库,中途会让你输入密码,该密码就是前面安装过程中你所设置的root用户密码:
进入数据库后,大多数时候,我们都只需要关注下面2、3这两个部分:
注意2面板需要点击Schemas后才会显示。
2面板显示的就是当前所有的数据库、比如这里默认创建了一个名为sys的数据库,其中的表你可以开tables中查看。
而3号面板则是供我们写sql语句的地方。
比如我们可以先创建一个数据库:
create database test;
然后使用一下该数据库
use test;
然后点击上方的图标即可执行这些语句:
此时下面就会有语句的执行结果:
然后点击2位置刷新一下,就可以看到我们的数据库test
已经创建成功了。
五、建立认知
MySql数据库是一个程序,程序里面可以存放许多个不同总类的数据库,比如qq用户数据库,微信用户数据库等等。
然后每个数据库又由许多表单组成,比如QQ数据库中,可能会有用户身份信息表单,用户账号关联应用表单,用户好友表单等。
而每个表单又由许多表单项组成,即我们常看见的表单有许多列的列头名,比如用户信息表单,可能有性别,生日,年龄等列。
而我们的众多信息就存在于各种表中,比如我的QQ可能就占某张表单的其中的一行,包含了我的各种信息。
而在当我们操作这些数据库时,MySql的众多命令都需要一个默认的数据库。
所以最开始的一句命令一般都为:use 数据库名;
就是告诉MySql软件我们接下来的命令默认对哪一个数据库进行操作。
还需要注意的是,MySql数据库命令都是以英文分号作为一条命令的结束
六、常见MySql指令
1.数据库相关
命令 | 作用 |
---|---|
CREATE DATABASES 数据库名称; | 创建数据库 |
DROP DATABASE 数据库名; | 删除数据库 |
show databases; | 显示所有数据库 |
show tables; | 显示当前数据库所有表 |
ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集名称; | 更改数据库字符集 |
2.表相关
命令 | 作用 |
---|---|
CREATE TABLE 表名(列名 类型 [属性],列名 类型 [属性]…); //属性可省略 | 创建表 |
DROP TABLE 表名; | 删除表 |
ALTER TABLE 表名 ADD 列名 类型; | 添加列 |
ALTER TABLE 表名 DROP COLUMN 列名; | 删除列 |
show columns from 表名; | 显示表中所有列 |
select * from 表名; | 显示表中所有数据 |
3.数据相关
命令 | 作用 |
---|---|
INSERT INTO 表名 VALUES(值,值,值…); //默认添加顺序为该表的列名顺序 | 添加数据 |
DELETE FROM 表名 WHERE 条件; | 删除数据 |
IPDATE 表名 SET 列名=值 WHERE 条件; | 修改数据 |
七、指令实战
上面已经创建了数据库:create database test;
并使用了该数据库:use test;
那我们就在该数据库中创建一张表:
create table stu(name char(20),age int,sex char,phono char(11));
执行后,刷新一下,就能看到表已经创建成功了:
或者你也可以输入命令查看表:show tables;
以及查看表中有哪些列:
show columns from stu;
效果如下:
然后向表中添加一些数据:
insert into stu values('ming',10,'1','10202020'),('zeng',20,'0','1390120'),('qiang',15,'1','9237133'),('hong',13,'0','1342432');
然后查看该表中所有的数据:
select * from stu;
效果如下:
还可以添加条件,比如显示年龄小于15,性别为男的数据
select * from stu where age<15 and sex='1';
除此之外很多其它的命令,也可以这样自己练习,只有将这些指令用熟练之后,才方便日后编程中使用
八、VS连接MySql
首先需要将下图路径添加到系统环境变量中:
不懂什么是环境变量的可以参考本站另一篇文章,这里不再赘述:程序员必懂的常识
然后将下图头文件复制到自己的VS项目中:
以及动态库、静态库:
此时VS项目文件夹中如下图:
然后输入以下代码:
#include<iostream>
#include<mysql.h> //mysql头文件
#pragma comment(lib,"libmysql.lib") //连接库文件
using namespace std;
int main() {
MYSQL* mysql = new MYSQL();
MYSQL* pDb = mysql_init(mysql);
if (pDb == NULL) {
cout << "初始化数据库失败";
return -1;
}
mysql_real_connect(pDb, "localhost", "root", "密码", "数据库名字", 3306, NULL, 0);
mysql_close(pDb);
return 0;
}
运行成功即为成功连接上数据库,就此可以C++编程操作数据库。
但最重要的还是基本MySql语句的使用,编程中会大量用到。