数据库系统概念期中考知识点整理
-
转眼间学期就已经过半了,也迎来了几个科目的期中考,数据库首当其冲。前几天忙着各种复习数据库,手写了一份挺详细的复习提纲,记录了比较经常考查的知识点
-
如有错误,欢迎指出
具体内容
-
数据、数据库、数据库系统、数据库管理系统的概念
-
(1) 数据(Data):描述事物的符号记录称为数据
-
(2) 数据库(DB):数据库是长期存储在计算机内的、有组织的、可共享的数据集合
-
(3) 数据库管理系统(DBMS):数据库管系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据
-
(4) 数据库系统(DBS):数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成
-
–> 上述后三者之间的关系:DBS包含DB、DBMS
-
-
概念模型中的术语
-
实体:客观存在并可以相互区分的事物叫实体
-
属性:实体所具有的某一特性,一个实体可由若干个属性来刻画
-
码:唯一标识实体的属性集称为码
-
域:域是一组具有相同数据类型的值的组合
-
实体型:具有相同属性的实体具有相同的特征和性质,用实体名极其属性名集合来抽象和刻画同类实体,称为实体型
-
实体集:同型实体的集合称为实体集
-
-
目前数据库领域最常用的逻辑数据模型有:
-
层次模型
-
网状模型
-
关系模型
-
-
实体联系图(E-R图)
-
实体型:用矩形表示,矩形框内写明实体名
-
属性:用椭圆表示,并用无向边将其与对应的实体连接起来
-
联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标明联系的类型(1:1或1:n或m:n)
-
–> 例:教学管理规定:
-
1、一个学生可以选修多门课,一门课有若干个学生选修
-
2、一个教师可以讲授多门课,一门课只有一个教师讲授
-
3、一个学生选修一门课,仅有一个成绩
-
学生的属性有学号、姓名;教师的属性有教师编号、教师姓名;课程的属性有课程号、课程名
-
-
根据以上的语义画出相应的E-R图:
-
-
数据库系统的三级模式结构:
-
外模式:亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据和逻辑表示
-
模式:亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构,外模式涉及的是数据的局部逻辑结构,通常是模式的子集
-
内模式:亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述
-
–> 数据库系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。这两层映像保证了数据库系统中的数据能有较高的逻辑独立性和物理独立性
-
-
数据库应用程序的编写基于外模式
- 外模式所针对的用户包括应用程序员以及最终用户
-
对数据库中进行增加记录类型或增加数据项,要使应用程序尽可能不变,应该调整外模式/模式映像
-
要保证数据库的物理数据独立性,需要修改的是模式/内模式映像
-
在数据库发展的几个阶段中,数据独立性最高的是数据库系统阶段
-
模式/外模式用于解决数据的逻辑独立性
-
数据库数据的正确性和相容性是数据库的完整性
-
数据库三级模式体系结构主要的目标是确保数据库的数据独立性
-
简述数据库系统从哪些方面来保证数据的安全性
-
1、身份认证:提供用户标识和密码的确认
-
2、用户操作对象的权限:通过授权机制
-
3、视图:只显示用户可以作用的属性和记录
-
4、存储过程:通过存储过程提高系统的安全性
-
-
数据库系统与文件系统的主要区别:
- 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决
-
数据的逻辑独立性是指:
- 模式改变,外模式和应用程序不变
-
数据库管理系统有哪些功能:
-
数据库管理系统(DBMS)是位于用户与操作系统之间的一个数据管理软件,它主要包括以下几个功能:
-
1、数据定义:DBMS提供数据描述语言(DDL),用户可以通过它来定义数据对象
-
2、数据操纵:DBMS还提供了数据操纵语言(DML),实现对数据库的基本操作:查询、插入、删除和修改
-
3、数据库的运行管理:这是DBMS的核心部分,它包括并发控制,安全性检查、完整性约束条件的检查和执行,发生故障后的恢复等
-
4、包括数据库初始数据的输入和转换,数据库的转储和恢复,数据库的重组等
-
-
-
数据库设计的6个阶段
-
1、需求分析
-
2、概念结构设计
-
3、逻辑结构设计
-
4、物理结构设计
-
5、数据库实施
-
6、数据库运行和维护
-
-
数据库系统的数据独立性体现在:
- 不会因为数据存储结构和数据逻辑结构的变化而影响应用程序
-
独立性和映像之间的关系:
-
要保证数据库的数据独立性,应修改三级模式之间的两层映像
-
要保证数据库的数据逻辑独立性,应修改模式/外模式映像
-
要保证数据库的数据物理独立性,应修改模式/内模式映像
-
–> 其中,数据独立性包括了数据逻辑独立性和数据物理独立性
-
-
区分不同实体的依据是:属性
-
什么是数据完整性?
- 数据的完整性是指存储在数据库中的数据的一致性和正确性
-
关系数据库中数据完整性约束的分类:
-
域完整性约束:列的值域的完整性
-
实体完整性约束:若属性A是关系R的主属性,则属性A不能取空值,且不能出现重复值
-
参照完整性约束:若属性F是关系R的外码,它与关系S的主码Ks相对应,则对于R中每个元组在F上的取值只能为以下两种情况之一:
-
取空值
-
等于S中某个元组的主码值
-
-
用户自定义完整性约束:针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求
-
-
数据库从哪些方面来保证数据的完整性?
-
1、列级约束:数据类型、宽度、缺省值、检查约束、是否空值、唯一约束
-
2、主键约束
-
3、外键约束
-
4、用户自定义约束:主要通过触发器完成
-
-
什么是事务?
- 事务是用户定义的一个数据库操作序列,是数据库中不可分割的最基本的工作单元,也是数据库恢复和并发控制的基本单元
-
事务的主要特征(ACID)
-
原子性(A):事务包含的程序作为数据库的逻辑工作单元,它所做的数据修改工作要么全部执行,要么都不执行
-
一致性©:一个事务在执行之前和执行之后数据库都必须处于一致性状态
-
隔离性(I):并发的事务是隔离的,即一个事务内部的操作及正在操作的数据必须是封锁起来的,不被其他企图进行修改的事务看到
-
持久性(D):一旦一个事务提交,DBMS保证它对数据库中数据的改变是永久性的
-