# mysql产品结构及概念
在上一章中我们对mysql的使用模式基本有了一个概念,这一章我们将站在使用者的角度对mysql整个运行流程进行梳理,只有对整个流程有个大概的梳理才能对进行接下来的学习。
# 客户端和服务端的产品结构
mysql客户端通过网络链接向服务端发送sql命令,对数据库中的数据和数据库结构物进行各种操作。
# 数据容器基本概念
- 服务器:本质就是一台电脑
- 数据库实例: 一台服务器中可以部署多个数据库实例, 作为初学者可以理解为一个客户端可以链接的对象,一般对外暴露一个服务地址+端口,在前面我们《搭建sql学习环境-mysql》中安装的数据库就是安装的一个实例
- 数据库: 一个数据库实例可以创建多个数据库,一个数据库可以简单理解成多个表的集合
- 数据表: 一类具有相同属性的数据存放的逻辑对象,和现实生活中的表格类型一样,有多列,每一行代表一条数据。比如人都有姓名年龄等属性,可以定义一个人的表来保存这些属性信息,列的名称就是年龄、姓名等,每一行就代表一个人的数据
- 数据字段: 表格中的列,每列的数据数据类型是一样的的
# sql命令的种类
英文缩写 | 命令类型 | 作用 |
---|---|---|
DDL | 数据定义语言 | 数据容器结构(数据库、数据表)操作 |
DCL | 数据控制语言 | 数据访问权限控制 |
DML | 数据操作语言 | 数据的增删查改 |
TCL | 事务控制语言 | 数据事务性操作 |
# 数据库中一些基础常识
- sql查询中 * 代表所有字段, selelct * from user代表查询user表的所有字段
- sql语句中的字符是不区分大小写的,也就是selelct * from user和SELECT * FROM USER 本质上是一样的,但是引号中的数据是区分大小写的
- 字段名、表名、数据库名字可以用
好包裹,非关键字时有没有
是一样的 - sql中字符串类型数据需要使用""或者''包裹,数字类型数据则可以不包裹直接使用