(二)关系型数据库
定义
是一种建立在 关系模型 上的数据库 ;
关系模型 ,一种建立在关系上的模型;
关系模型包含三个方面:
- 数据结构:数据存储,二维表(列和行)
- 操作指令集合:所有
SQL
集合 - 完整性约束:表内数据约束(字段和字段),表与表之间的约束(外键)
关系型数据库的设计
关系型数据库:从需要存储的数据需求中进行分析,如果是一类数据(实体)应该设计成一张二维表;
表:由表头(字段名:用来规定数据的名字)和数据部分(实际存储的数据单元)组成;
二维表:行和列
表头 | 字段名1 | 字段名2 |
---|---|---|
数据单元 | 数据1 | 数据1 |
由于是用二维表存储的,这样即使某条记录的某列没有值,也要为其保存下来,占用同等的存储空间 ,造成空间的浪费;
关键字说明
- database : 数据库
- DBS(database system): 一种虚拟系统,将多种内容关联起来的称呼(DBS = DBMS + DB)
- DBMS(database manger system):数据库管理系统,专门管理数据库
- DBA(database administrator):数据库管理员
- 行/记录:row/record 本质上一个东西,行是从结构角度,列是从数据角度 ;
- 列/字段:column/field 同上 ;
SQL
SQL :Structured Query Language
,结构化查询语言
SQL 分为三个部分:
-
DDL :data definition language
数据定义语言,用来维护存储数据的结构(数据库,表);代表指令:
create ,alter
-
DML :data manipulation language
数据操作语言,用来对数据进行操作(数据库表中的内容),代表指令:
insert、update、delete ;
其中DML
内部单独又进行了一个分类:DQL (data query language)
,数据库查询语言,如select
; -
DCL :data control language
数据库控制语言,主要负责权限管理(用户),代表指令:
grant、revoke
;
SQL 是关系型数据库的操作指令,SQL是一种约束,但是不强制,因此 ,不同的数据库产品可能内部实现会有细微差别 ;