【SQL server】基础入门0——理论部分

 

数据库系统(DBS, DataBase System)
 
数据库管理系统DBMS,Management)

数据库管理系统是数据库系统的核心,常见的DBMS有SQL Sever,MySQL,Access,Oracle等

其主要功能包括数据库定义功能数据存取功能数据库运行管理数据库的建立和维护四个方面
 
DDL与DML

DDL(Data Definition Langage,数据定义语句):create, alter, drop

DML(Data Manipulation Language,数据操纵语句):即增删改查,insert, delete, update, select
 
数据库系统的三级模式和两级映像(重点)

【SQL server】基础入门0——理论部分_第1张图片
注意

  1. 外模式/模式映像有多个;模式/内模式映像是唯一一个(这很容易记住,因为除了外模式,模式和内模式都是唯一一个的)
  2. 外模式/模式映像体现了数据的逻辑独立性;模式/内模式映像体现了数据的物理独立性
  3. DBS三级模式两级映像的作用:程序与数据互不依赖,即数据的(逻辑和物理)独立性

数据模型vs概念模型
 
关于数据模型:

数据模型的三要素:数据结构数据操作数据的约束性条件

三种基本的数据模型:层次模型(树)网状模型(图)关系模型(表);我们在数据库着重使用关系模型
 
关于概念模型:

实体(Entity),属性(Attribute),关系(Relationship)

说到概念模型,最重要的就是E-R图。这里是一个经典的E-R图(戳这里

这个考点比较简单,稍微注意一下:都是没有箭头的无向边;标上(数量)关系;给属性中的(Key)标下划线
 
常见的题型就是E-R图关系模型的相互转换(实际上就是在概念模型数据模型层面上的转换)

 

关系数据库
 
相关定义的通俗解释

属性:一列就是一个属性

元组:一行就是一个元组

:就是属性的取值范围(是一个集合)

笛卡尔积:例如(A,B,C)和(男,女)是两个属性的域,它们的笛卡尔积就是6个元组:(A,男),(B,男)…(C,女)

关系:笛卡尔积的一个有意义的子集(笛卡尔积通常产生大量没有意义的元组数据)

候选码:具有唯一标识的作用。

主码:选定一个候选码作为主码
 

关系的完整性

实体完整性:实体必须可以被唯一标识才可以存在(也就是说,主码必须完整)

参照完整性:引用的外码必须为 1.空值 2.某个元组的主值(可以是自身元组的主值)

用户定义的完整性:比如性别一般只能是男/女,取值必须符合实际语义
 

关系运算

(并不难,主要还是为后来学习操作数据做准备)

并差交,笛卡尔积,与或非,选择(水平角度),投影(垂直角度),连接(自然连接,等值连接),更名,赋值

这里只说两点

一是区分自然连接等值连接:自然连接会自动去掉重复的属性列;等值连接就是根据给定的条件进行连接

二是关系运算中的法运算(有点麻烦)
【SQL server】基础入门0——理论部分_第2张图片

 

范式(Normal Form)
 
函数依赖

X→Y 称为 “X决定Y” 或 “Y依赖于X”
 
平凡的函数依赖 / 非平凡的函数依赖

学号→学号  或者   (学号,课程号)→学号,都是平凡的函数依赖

可以看出,研究平凡的函数依赖并没有什么意义,因此之后我们只去考虑非平凡的函数依赖
 
完全函数依赖 / 部分函数依赖

在关系(学号,姓名,课程号,成绩)中:

(学号,课程号)→成绩,是完全函数依赖;(学号,课程号)→姓名,是部分函数依赖
 
传递函数依赖

如果X→Y,Y不→X,且Y→Z,得到X→Z。

在关系(学号,姓名,系,系主任)中,学号 → 系主任 代入上式成立,是一个典型的传递函数依赖

 
关系规范化(重点)

关系规范化是为了解决:数据冗余,更新异常,插入异常,删除异常

6种范式:1NF ⊆ 2NF ⊆ 3NF ⊆ BCNF ⊆ 4NF ⊆ 5NF

只要每列属性不能再分,就属于第一范式了
 

★☆★ 如何判断关系模式属于第几范式?

首先,找出(唯一标识作用的属性或属性组),其余的都为非主属性;然后观察非主属性对于码的依赖:

❶ 1NF→2NF,消除了原关系中非主属性对码的部分函数依赖

❷ 2NF→3NF,消除了原关系中非主属性对码的传递函数依赖

❸ 3NF→BCNF,消除了原关系中主属性对码的部分函数依赖和传递函数依赖

 

 

 

 

小练习
【SQL server】基础入门0——理论部分_第3张图片

【SQL server】基础入门0——理论部分_第4张图片

你可能感兴趣的:(SQL,server)