002-MySQL数据库

MySQL介绍

MySQL是一个关系型数据库管理系统,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件,它是由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品,MySQL 是最流行的关系型数据库管理系统中的一个。

MySQL的特点

MySQL是开源的,所以你不需要支付额外的费用。
MySQL支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
MySQL使用标准的SQL数据语言形式。
MySQL可以安装在不同的操作系统,并且提供多种编程语言的操作接口。这些编程语言包括C、C++、Python、Java、Ruby等等。

MySQL安装

SQL语句

1、连接数据库

结构化查询语言(Structured Query Language)简称SQL,是关系型数据库管理系统都需要遵循的规范,是数据库认识的语句。不同的数据库生产厂商都支持SQL语句,但都有特有内容。

举例:

普通话:各数据库厂商都遵循的ISO标准。

方言:数据库特有的关键字。

image-20210906161025925

2、SQL语句分类

☆ DDL

数据定义语言:简称DDL(Data Definition Language)
用来定义数据库对象:数据库,表,列等。
关键字:create,alter,drop等

☆ DML

数据操作语言:简称DML(Data Manipulation Language)
用来对数据库中表的记录进行更新。
关键字:insert,delete,update等

☆ DQL

数据查询语言:简称DQL(Data Query Language)
用来查询数据库中表的记录。
关键字:select,from,where等

☆ DCL

数据控制语言:简称DCL(Data Control Language)
用来定义数据库的访问权限和安全级别,及创建用户。

3、SQL基本语法

① SQL语句可以单行或多行书写,以分号结尾。

select * from students;

② 可使用空格和缩进来增强语句的可读性

select
  *
from students;

③ MySQL数据库的SQL语句不区分大小写,关键字建议使用大写

SELECT * FROM user;
等价于
select * from user; 

④ 可以使用单行与多行注释

#  单行注释
-- 单行注释,注意:--后面有一个空格
/*
	...
	多行注释
	...
*/

4、小结

结构化查询语言(SQL),是关系型数据库管理系统都需要遵循的规范,。不同的数据库生产厂商都支持SQL语句,但都有特有内容。

SQL语句分为:数据定义语言(DDL),数据操作语言(DML),数据查询语言(DQL),数据控制语言(DCL)。

SQL通用语法:结构灵活,使用分号结尾;不区分大小写;可以使用/**/,#,--来进行注释。

DDL数据库操作

1、MySQL的组成结构

注:我们平常说的MySQL,其实主要指的是MySQL数据库管理软件。

一个MySQL DBMS可以同时存放多个数据库,理论上一个项目就对应一个数据库。如博客项目blog数据库、商城项目shop数据库、微信项目wechat数据库。

一个数据库中还可以同时包含多个数据表,而数据表才是真正用于存放数据的位置。(类似我们Office软件中的Excel表格),理论上一个功能就对应一个数据表。如博客系统中的用户管理功能,就需要一个user数据表、博客中的文章就需要一个article数据表、博客中的评论就需要一个message数据表。

一个数据表又可以拆分为多个字段,每个字段就是一个属性。

一个数据表除了字段以外,还有很多行,每一行都是一条完整的数据(记录)。

2、数据库的基本操作

① 创建数据库

普及英语小课堂:

创建 => create

数据库 => database

创建 + 数据库 = create database 数据库名称(字母+数字+下划线组成,以字母开头,不能出现中文以及特殊字符)

基本语法:

mysql> create database 数据库名称 [设置编码格式];

特别注意:在MySQL中,当一条SQL语句编写完毕后,一定要使用分号;进行结尾,否则系统认为这条语句还没有结束。

案例:创建数据库的相关案例

创建数据库
create database <数据库名>;

创建数据库并指定默认字符集
create database <数据库名> default charset gbk;

如果存在不报错(if not exists)
create database if not exists <数据库名> default charset=utf8;
说明:不能创建相同名字的数据库!

扩展:编码格式,常见的gbk(中国的编码格式)与utf8(国际通用编码格式)

latin1 256个字符

国内汉字无法通过256个字符进行描述,所以国内开发了自己的编码格式gb2312,升级gbk

中国台湾业开发了一套自己的编码格式big5

很多项目并不仅仅只在本地使用,也可能支持多国语言,标准化组织开发了一套通用编码utf8,后来5.6版本以后又进行了升级utf8mb4

编写SQL语句是一个比较细致工作,不建议大家直接在终端中输入SQL语句,可以先把你要写的SQL语句写入一个记事本中,然后拷贝执行。

② 查询数据库

英语小课堂:

显示 => show

数据库 => database

显示 + 所有数据库 = show databases;

基本语法:显示所有数据库

mysql> show databases;

查看数据库的创建过程

mysql> show create database <数据库名>

③ 删除数据库

英语小课堂:

删除 => drop

数据库 => database

删除 + 数据库 = drop database 数据库名称;

基本语法:

mysql> drop database <数据库名>;

案例:删除db_itheima数据库

mysql> drop database <数据库名>;

④ 选择数据库

从数据库列表中查找需要使用的数据库

格式:

use <数据库名>;

查看正在使用的数据库(8.0以后版本需要基于select查询来获取当前数据库)

select database();

3、小结

创建数据库:CREATE DATABASE 数据库名;
查看数据库:SHOW DATABASES;
删除数据库:DROP DATABASE 数据库名;
使用数据库:USE 数据库名;