数据库原理复习资料整理综述.pdf
《数据库原理复习资料整理综述.pdf》由会员分享,可在线阅读,更多相关《数据库原理复习资料整理综述.pdf(15页珍藏版)》请在三一文库上搜索。
1、第一章 1.四大基本概念: 数据 :数据库中存储的基本对象,它是描述事物的符号记录。种类有:文字、图形、 图象、声音等。特点是:数据与其语义是不可分的。 数据库 :(Database,简称DB) 是长期储存在计算机内、有组织的、可共享的大量数据集 合。其特点是: 数据按一定的数据模型组织、描述和储存; 可为各种用户共享;冗余度较小; 数据独立性较高;易扩展。(特点:永久存储、有组织、可共享) 数据库管理系统:是位于用户与操作系统之间的一层数据管理软件。 数据库管理系统的主要功能:数据定义功能;数据组织、存储和管理;数据操纵功 能;数据库的事物管理和运行管理;数据库的建立和维护功能;其他功能。
2、数据库系统 :是指在计算机系统中引入数据库后的系统。一般由数据库、 数据库管理系 统(及其开发工具) 、应用系统、数据库管理员(和用户)构成。 在不引起混淆的情况下常常把数据库系统简称为数据库。 2.数据管理技术的三个阶段及其特点 人工管理阶段:特点: 1、数据不保存。 2、没有软件系统对数据进行管理。 3、这一时期没有文件的概念,数据的组织方式必须由程序员自行 设计。 4、一组数据对应一组程序,数据是不共享的。 5、数据不具有独立性,当数据结构发生变化时,应用程序要变化。 文件系统阶段:特点: 1、数据可以长期保存。 2、由文件系统管理数据。 3、数据共享性差, 冗余度大文件是面向应用的。
3、4、 数据独立性差是不具有弹性的无结构的数据集合,文 件之间是孤立的,不能反映事物间联系。 数据库系统阶段:特点:数据的管理者:DBMS 数据面向的对象:现实世界 数据的共享程度:共享性高 数据的独立性:高度的物理独立性和一定的逻辑独立性 数据的结构化:整体结构化 数据控制能力:由DBMS 统一管理和控制 3、数据库系统的特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高; 数据有 DBMS 统一管理和控制。 4、数据模型的组成要素:数据结构、数据操作和完整性约束。 数据结构是对系统静态特性的描述。 数据操作是对系统动态特性的描述。 5、概念模型: 基本概念 :实体: 客观存在并
4、可相互区别的事物称为实体。 属性: 实体所具有的某一特性称为属性。 码: 唯一标识实体的属性集称为码。 域: 属性的取值范围称为该属性的域。 实体型: 具有相同属性的实体具有的共同的特征和性质,即: 用实体名及其 属性名集合来抽象和刻画同类实体。 实体集: 同型实体的集合称为实体集。 联系: 现实世界中事物内部以及事物之间的联系在信息世界中反映为实体 (型)内部的联系和实体(型)之间的联系。 概念模型的表示方法:实体联系方法,用E-R 图来描述。 E-R 图: 实体型 :矩形表示,矩形框内写明实体名。 属性: 椭圆表示,用无向边将其与相应实体连接起来。 联系: 菱形表示,菱形框内写明联系名,并
5、用无向边分别与有关实体连接起来,同 时在无向边旁标上联系的类型(1:1、1:n 或 m:n) 。联系可以有属性。 课程学生选修 课程号 课程名成绩学号姓名 mn 6、关系模型: 在用户观点下, 关系模型中数据的逻辑结构是一张二维表,它由行和列组成。 关系模型中的基本概念:关系( Relation) :一个关系通常对应一张表; 元组( Tuple) :表中的一行即为一个元组; 属性( Attribute ) :表中的一列即为一个属性,给每一个属性起一个名称即属性名; 主码( Key) :表中的某个属性组,它可以唯一确定一个元组; 域( Domain) :属性的取值范围; 分量:元组中的一个属性值
6、; 关系模式:对关系的描述,一般表示为: 关系名(属性1,属性 2,属性n) 关系模型中,实体及实体间的联系都是用关系来表示。 例学生、课程、学生与课程之间的多对多联系: 学生(学号,姓名,年龄,性别,系号,年级) 课程(课程号,课程名,学分) 选修(学号,课程号,成绩) 关系必须是规范化的,满足一定的规范条件。最基本的规范条件:关系的每一个分量 必须是一个不可分的数据项。 关系模型的优缺点: 优点: 建立在严格的数学概念的基础上。 概念单一。数据结构简单、清晰,用户易懂易用 关系模型的存取路径对用户透明。 缺点 存取路径对用户透明导致查询效率往往不如非关系数据模型 7、数据库系统的三级模式
7、数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。 模式(逻辑模式) ,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数 据视图。一个数据库只有一个模式。 定义模式时不仅要定义数据的逻辑结构,而且要定义数据之间的联系,定义与数据有 关的安全性、完整性要求 外模式 (子模式Subschema)或用户模式,是数据库用户能够看见和使用的局部数据的 逻辑结构和特征的表述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 外模式通常是模式的子集,一个数据库可以有多个外模式。 外模式是保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式 中的数据
8、,数据库中的其余数据是不可见的。 内模式 (存储模式Storage Schema),是数据物理结构和存储方式的描述,是数据在数据 库内部的表示方式。一个数据库只有一个内模式。 8、数据库的二级映像功能:数据库管理系统在三级模式之间提供了两层映象:外模式 /模式 映象、模式 /内模式映象。 外模式 /模式映象 定义外模式与模式之间的对应关系 每一个外模式都对应一个外模式模式映象 映象定义通常包含在各自外模式的描述中 外模式 /模式映象如何保证数据的逻辑独立性? 当模式改变时,数据库管理员修改有关的外模式模式映象,使外模式保持不变。 应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数
9、据与程序的逻辑独 立性,简称数据的逻辑独立性。 模式 /内模式映象 模式内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。 数据库中模式内模式映象是唯一的 该映象定义通常包含在模式描述中 模式 /内模式映象如何保保证数据的物理独立性? 当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式 内模式映象,使模式保持不变。应用程序不受影响。保证了数据与程序的物理独立性,简称 数据的物理独立性。 9、数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统和数据库管理 员构成。 第四章 1、安全性级别 TCSEC将系统划分为四组(ABCD )七个等级,依次是D、C
10、1、C2、B1、B2、B3、A1。 D级: 是最低级别 。将一切不符合更高标准的系统均归于D 组。如 DOS实操作系统中 安全标准为D级的典型例子。 C1级:非常初级的自主安全保护。能够实现对用户和数据的分离,进行自主存取控制 (DAC ) ,保护或限制用户权限的传播。 C2级: 安全产品的最低档次。提供受控的存取保护,将C1 级的 DAC进一步细化,以 个人身份注册负责,并实施审计和资源隔离。达到C2级的产品在其名称中往往不突出“安 全” (Security)这一特色。 B1级: 标记安全保护。 “安全” (Security)或“可信的” (Trusted)产品。 对系统的数据加以标记,对标
11、记的主体和客体实施强制存取控制 ( MAC ) 、审计等安全机制。 B2级: 结构化保护。 建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC 和 MAC 。经过认证的B2级以上的安全系统非常稀少。 B3级:安全域。 A1级:验证设计,即提供B3 级保护的同时给出系统的形式化设计说明和验证以确信 各安全保护真正实现。 2、数据库安全性控制方法: 3、用户标识与鉴别 是系统提供的最外层安全保护措施。 用户标识:用一个用户名或用户标识号来标明用户身份。 口令:系统核对口令以鉴别用户身份。 基本方法 系统提供一定的方式让用户标识自己的名字或身份; 系统内部记录着所有合法用户的标识; 每次用
12、户要求进入系统时,由系统核对用户提供的身份标识; 通过鉴定后才提供机器使用权。 用户标识和鉴定可以重复多次 该方法简单易行,但用户名和口令容易被人窃取。 4、存取控制 存取控制机制的组成:定义存取(用户)权限检查存取权限 定义存取权限:指定哪些用户可以对数据对象进行哪些操作。 检查存取权限:检查操作请求是否超出了定义的权限。 常用存取控制: 自主存取控制(DAC ) :C2级,非常灵活。 同一用户对于不同的数据对象有不同的存取权限 不同的用户对同一对象也有不同的权限 用户还可将其拥有的存取权限转授给其他用户 强制存取控制(MAC): B1级,比较严格。 每一个数据对象被标以一定的密级 每一个用
13、户也被授予某一个级别的许可证 对于任意一个对象,只有具有合法许可证的用户才可以存取 5、用户权限有数据库对象 和操作类型 两个要素组成。 6、自主存取控制(DAC )方法 主要通过SQL提供的 grant语句和 revoke 语句来实现。 授权: 定义存取权限成为授权。 GRANT语句的 一般格式: GRANT ,. ON TO ,. WITH GRANT OPTION; GRANT 功能(作用) :将对指定操作对象的指定操作权限授予指定的用户。 发出 GRANT 语句的对象: DBA (数据库管理员), 数据库对象创建者,已经拥有该权限的 用户。 DBA 拥有对数据库所有对象的所有权限,用户
14、对自己建立的基本表和视图拥有全部 的操作权限。 接受权限的用户:一个或多个具体用户,或PUBLIC ,即全体用户。 WITH GRANT OPTION:获得某种权限的用户还可以把这种权限再授予别的用户。若没有指 定该语句,则用户只能使用该权限,不能传播该权限。 例 1 把查询 Student 表权限授给用户U1 GRANT SELECT(INSERT/UPDATE(Sno) )或者为 ALL PRIVILEGES( 全部操作权限) ON TABLE Student TO U1;或者 TO U1,U2, U3;或者 TO PUBLIC; 例 2 把对表 SC的 insert权限授予U5,并允许将
15、此权限在授予其他用户。 GRANT INSERT ON SC TO U5 WITH GRANT OPTION; 执行例 2 后, U5不仅拥有了对表SC的 INSERT权限,还可以传播此权限: U5 可以将此权限授予U6(即有 U5发出下列语句) GRANT INSERT ON SC TO U6 WITH GRANT OPTION; REVOKE( 回收) REVOKE 语句的一般格式为: REVOKE ,. ON FROM ,.CASCADE|RESTRICT; REVOKE 语句功能:从指定用户那里收回对指定对象的指定权限 CASCADE:联级回收 例把用户 U4修改学生学号的权限收回 R
16、EVOKE UPDATE(Sno) ON TABLE Student FROM U4; 或者为 PUBLIC 例把用户 U5对 SC表的 INSERT权限收回 REVOKE INSERT ON TABLE SC FROM U5 CASCADE;/ 直接或间接从U5得到的 insert权限也将被回收 注: 系统不同,缺省回收不同,有的是缺省为CASCADE,有的为RESTRICT 7、强制存取控制(MAC )方法 在 MAC 中, DBMS 所管理的全部实体被分为主体 和 客体 两大类。 主体 是系统中的活动实体, 既包括 DBMS 所管理的实际用户, 也包括代表用户的各进程。 客体 是系统中的
17、被动实体,是受主体操纵的,包括文件、基表、索引、视图等等。 对于主体和客体,DBMS 为它们每个实例(值)指派一个敏感度标记(Label ) 。 敏感度标记被分成若干级别 ,通常为:绝密(Top Secret)、机密 (Secret)、可信 (Confidential)、公开 (Public)等。 主体的敏感度标记被称为许可证级别 ,客体的敏感度标记称为密级 。 当某一用户(或一主体)以标记label注册入系统时,系统要求他对任何客体的存取 必须遵循如下 规则 : (1) 仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体; (2)仅当主体的许可证级别等于客体的密级时,该主体
18、才能写相应的客体。 第五章 1、数据库的完整性是指数据的正确性和相容性。 2、完整性控制机制: (1)提供定义完整性月数条件的机制 (2)提供完整性检查的方法(3)违约处理 3、实体完整性定义:PRIMARY KEY 定义 , 表级完整性约束或列级完整性约束。 实体完整性:主属性不能为空。 例: CREATE TABLE Student (Sno CHAR(5) PRIMARY KEY, /*在列级定义主码*/ Sname CHAR(20) NOT NULL, Ssex CHAR(1) , Sage INT, Sdept CHAR(15); CREATE TABLE Student (Sno
19、CHAR(5) , Sname CHAR(20) NOT NULL, Ssex CHAR(1) , Sage INT, Sdept CHAR(15), PRIMARY KEY ( Sno) /*在表级定义主码*/ ); CREATE TABLE SC (Sno CHAR(9) NOT NULL, Cno CHAR(4) NOT NULL, Grade SMALLINT, PRIMARY KEY ( Sno,Cno) /*一组属性为主码,只能在表级定义主码*/ ) ; 4、实体完整性检查和违约处理 按照实体完整性规则, 系统自动检查 :1 )主码值是否唯一。2)主码各属性是否为空。 5、参照完整
20、性定义:创建表时 ,FOREIGN KEY定义。 参照完整性:外码取值为空或者等于相对应的主码的某个元祖的值。 例: CREATE TABLE SC( Sno CHAR(5) , Cno CHAR(3) , Grade int, Primary key (Sno, Cno) foreign key (Sno) references Student(Sno), foreign key (Cno) references Course(Cno) ); 6、实现参照完整性要考虑的几个问题: 1)外码能否接受空值问题 2) 在被参照关系中删除元组的问题 3)在参照关系中插入元组时的问题 4)修改关系中主
21、码的问题 1 ) 外码能否接受空值问题 在实现参照完整性时,系统除了应该提供定义外码的机制,还应提供定义外码列是否 允许空值的机制。 例 1: 学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名) 在学生关系中的专业号列可以取空值。 例 2: 学生(学号,姓名,性别,专业号,年龄) 课程(课程号,课程名,学分) 选修(学号,课程号,成绩) 选修关系中的学号列不能取空值。 2 )在被参照关系中删除元组的问题 一般地, 当删除被参照关系的某个元组,而参照关系存在若干元组,其外码值与被参照 关系删除元组的主码值相同,这时可有三种不同的策略: (1) 级联删除( CASCADES) (2)
22、受限删除( RESTRICTED ) 仅当参照关系中没有任何元组的外码值与被参照关系中要删除元组的主码值相同 时,系统才执行删除操作,否则拒绝此删除操作。 (3) 置空值删除( NULLIFIES) 删除被参照关系的元组,并将参照关系中相应元组的外码值置空值。 这三种处理方法,哪一种是正确的,要依应用环境的语义来定 3 )在参照关系中插入元组时的问题 一般地, 当参照关系插入某个元组,而被参照关系不存在相应的元组,其主码值与参照 关系插入元组的外码值相同,这时可有以下策略: (1)受限插入 仅当被参照关系中存在相应的元组,其主码值与参照关系插入元组的外码值相同 时,系统才执行插入操作,否则拒绝
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 复习资料 整理 综述
链接地址:https://www.31doc.com/p-4954771.html