数据库概念笔记
1.数据库系统的主要特点:数据结构化、数据的共享性高,冗余度低,易扩充、数据独立性高、数据由DBMS(数据库管理系统)统一管理和控制
ps:DB(Database)->数据库 DBS(Database System)->数据库系统 DBMS->(Database Manage System)数据库管理系统
DBS的最大特点是数据的三级抽象和二级独立性,由DBMS、数据库管理员、数据库组成
数据库应用系统由数据库系统、应用程序系统、用户组成(数据库应用系统包含了DBS,DBS包含了DBMS,DB)
DBMS主要功能是数据定义功能、数据操纵功能、数据库的运行管理和数据库的建立以及维护
数据独立性是指不会
因为系统数据存储结构与数据逻辑结构的变化而影响应用程序!
2、数据的逻辑结构独立性指:模式(概念模式)改变,外模式和应用程序不变
数据的物理结构独立性指:内模式改变,外模式和应用程序不变
数将数据库的结构划分成多个层次,是为了提高数据库的逻辑独立性和物理独立性。(分层次->逻辑、物理独立性)
ps:用户级对应外模式,概念级(逻辑独立性)对应模式,物理级对应内模式
3.关系数据模型:关系模型与非关系模型不同,它有严格的数学理论根据;数据结构简单、清晰,用户易懂易用,不仅
用关系描述实体,而且用关系描述实体间的联系,此外,对数据的
操作结果也是关系;关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库建立和开发的工作。
相对于非关系数据模型来说,其缺点为存取路径对用户透明,需查询优化!
4.自然连接要求有一个或多个共同的
属性
5.关系运算中,集合运算符有:∩,∪,-,×(笛卡尔积)
专门的关系运算符:÷,π(投影),σ(选择),θ(连接)
比较运算符:<,>,≥,≤,=,<>(不等于)
逻辑运算符:¬,∨,∧
5种基本的关系运算符为:∪,-,×,π和σ
6.sql语言具有数据定义、数据操纵、数据控制
关系数据语言有:
sql语言,关系代数语言,关系演算语言
7.从E-R图(实体-联系图,概念设计)向关系模型的转换所遵循的转换原则是:
E-R
图中的每个实体,对应一个关系,该关系具有属性为实体的全部属性,关键字为实体的关键字。
E-R
图中的一个联系对应一个关系,该关系具有属性为联系的属性以及该联系相关的实体的关键字。考虑到数据库优化,根据联系类型不同在转换为关系模式时具体处理不同:联系类型为
1:1
时,-先将两个实体分别转换两个关系模式,然后在任意一个关系模式中加入另一个关系模式的键和联系类型的属性。
1
:
N
-先将两个实体分别转换为两个关系模式,然后在
N
端实体转换关系模式中加入
1
端实体转换的关系模式的键和联系类型的属性。
M
:
N
-先将两个实体分别转换为两个关系模式,然后将联系类型转换为第三个关系模式,其属性由两端实体的键和联系类型的属性构成。
(这是简答题的答案描述)
①一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的关键字就是关系的关键字;
②一个联系转换为一个关系模式,与该联系相连的各实体的码以及联系的属性转换为该关系的属性。
该关系的码有以下3种情况:一个1:1的联系转换为一个关系,相连实体的关键字都是关系的侯选关键字;一个1:n的联系转换为一个关系,多方实体的关键字是关系的关键字;一个n:m的联系转换为一个关系,相连实体的关键字的组合组成关系的关键字(复合关键字)。
(这是个人的理解)
8.关系规范化中的
删除操作异常是指不该删除的数据被删除,插入操作异常是指应该插入的数据未被插入
关系数据库规范化是为解决关系数据库中插入、删除和数据冗余问题而引人的
9.数据库系统的核心是数据库管理系统
10.相对于其他数据管理技术,数据库系统有数据共享、减少数据冗余、保持数据的一致性、数据有独立性和数据有安全与完整性的保障的特点。
11.常用的数据模型有:网状、层次、关系模型
12.数据模型是由数据结构、数据操作、完整性约束三部分组成
根据数据模型应用目的不同,数据模型分为概念模型和数据模型
13. 主属性:即在候选码里的属性,如(sno,cno)为候选码,则sno,cno为主属性
非主属性:与主属性定义相反
完全函数依赖:某属性完全由候选码决定,候选码中任意一个真子集都不能决定
如:(sno,cno)->grade,(sno,cno)共同决定grade,缺一不可
非完全函数依赖:例:(sno,cno)->grade,sno->grade 因为sno,cno中sno也可决定grade,所以为非完全函数依赖
候选码:K为R<U,F>中的属性或属性组合,若U(所有属性的集合)对K的完全函数依赖,则K为R的候选码
超码:若U(所有属性的集合)对K的部分函数依赖,则K为R的超码。若K为超码,则所有包含K的集合也是超码,而且所有包含K的集合不能是候选码,因为候选码是最小的超码
主码:从候选码(若候选码多于一个)中任选一个
2NF:每一个非主属性完全函数依赖于任何一个候选码
3NF:每一个非主属性不传递函数依赖,也不部分函数依赖于码
BCNF:没有任何属性完全依赖于非主属性
14.E-R图中,矩形代表实体,菱形代表联系,椭圆代表实体中的属性,实线代表实体与实体之间的联系
补充:
1.
外码和相应的主码之间,
外码不一定要与相应的主码同名
即student表的主码是sno,course表的主码是cno,外码是stu(该外码是参照student的主码sno;在代码应这样实现:foreign key(stu) references student(sno))。
2.关于int,bigint,smallint,tinyint数据类型的存储大小,取值范围请参照该网址(
https://www.cnblogs.com/xiaochaohuashengmi/archive/2011/08/25/2152993.html)
3.①关系数据库中,实现表与表之间的联系是通过
参照完整性规则
②在关系数据库中,用来表示实体之间联系的是
二维表
③在关系数据库中,关系之间的联系靠
连接字段值处理
4.网状数据模型表示实体之间联系的是有向图(网状数据结构),层次数据模型表示实体之间联系的是有向树(树状数据结构),关系模型是二维表
5.
分布式数据库的特点是,数据不具有较高的独立性。但是具有分布透明性,物理分布性,逻辑整体性(
注意,不是物理独立性,逻辑独立性
)
6.属于数据库概念模型设计E-R图的工作内容是:确定实体和实体的属性,确定实体间的联系和联系类型,确定实体的标识属性等相关的工作
属于数据库逻辑模型设计的工作内容是:按照概念模型建立的基本的E-R图细分,分解为每一个物理模型,如层次模型,网状模型,关系模型,面向对象模型等
7.
构成E-R模型的三个基本要素是实体、属性、联系
8.
允许空值但不允许出现重复值的约束是UNIQUE
9.数据库完整性是指数据
正确性和相容性
10.数据流图(DFD)和数据字典(DD)主要用来描述结构化方法中的
需求分析阶段的工具
11.数据模型由数据结构,数据操作,完整性约束三部分完成
12.规范化数据库设计分为六个阶段:
需求分析阶段,概念结构设计,逻辑结构设计,物理结构设计,数据库实施阶段,数据库运行和维护阶段
13.sql中,表有三种:视图,基本表以及临时表(虚表)
14.在函数依赖的范畴内,最高的规范化程度是BC范式
15.
视图对应三级模式结构中的
外模式
16.在关系数据库的规范化理论中,在执行“分解”时,必须遵守:保持原有的函数依赖和无损连接
17.对关系的完整性约束通常包含实体完整性,参照完整性,用户定义完整性