数据库系统概论复习资料Word格式.docx
《数据库系统概论复习资料Word格式.docx》由会员分享,可在线阅读,更多相关《数据库系统概论复习资料Word格式.docx(23页珍藏版)》请在冰豆网上搜索。
11.关系模式:
从用户观点看,关系模式是由一组关系组成,每个关系的数据结构是一张规范化的二维表。
12.型type/值value:
型是对某一类数据的结构和属性的说明;
值是型的一个具体赋值,是型的实例。
13.数据库模式:
是对数据库中全体数据的逻辑结构(数据项的名字、类型、取值范围等)和特征(数据之间的联系以及数据有关的安全性、完整性要求)的描述。
14.数据库系统的三级模式结构:
外模式、模式和内模式。
15.数据库内模式:
又称为存储模式,是对数据库物理结构和存储方式的描述,是数据在数据库内部的表示方式。
一个数据库只有一个内模式。
16.数据库外模式:
又称为子模式或用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。
通常是模式的子集。
一个数据库可有多个外模式。
1.分析并画出某图书馆管理系统的E-R图(可不画出属性)。
主要实体型包括:
图书、出版社、经销商、借阅人、书库、职工。
2.简述层次模型的基本特点:
•结点的双亲是唯一的
•只能直接处理一对多的实体联系
•每个记录类型可以定义一个排序字段,也称为码字段
•任何记录值只有按其路径查看时,才能显出它的全部意义
•没有一个子女记录值能够脱离双亲记录值而独立存在
3.简述层次模型的优缺点。
优点:
•层次模型的数据结构比较简单清晰
•查询效率高,性能优于关系模型,不低于网状模型
•层次数据模型提供了良好的完整性支持
缺点:
•多对多联系表示不自然
•对插入和删除操作的限制多,应用程序的编写比较复杂
•查询子女结点必须通过双亲结点
•由于结构严密,层次命令趋于程序化
4.阐述数据库三级模式、二级映象的含义及作用。
•数据库三级模式反映的是数据的三个抽象层次:
模式是对数据库中全体数据的逻辑结构和特征的描述。
内模式又称为存储模式,是对数据库物理结构和存储方式的描述。
外模式又称为子模式或用户模式,是对特定数据库用户相关的局部数据的逻辑结构和特征的描述。
•数据库三级模式通过二级映象在DBMS内部实现这三个抽象层次的联系和转换。
外模式面向应用程序,通过外模式/模式映象与逻辑模式建立联系,实现数据的逻辑独立性。
模式/内模式映象建立模式与内模式之间的一对一映射,实现数据的物理独立性。
5.阐述DBA的职责。
•决定数据库的中的信息内容和结构
•决定数据库的存储结构和存取策略
•决定数据的安全性要求和完整性约束条件
•监控数据库的使用和运行
•数据库的改进和重组重构
•定期对数据库进行重组织,以提高系统的性能
第二章
1.主码:
能够唯一地标识一个元组的属性或属性组称为关系的码或候选码。
若一个关系有多个候选码则可选其一作为主码或主键(Primarykey)。
2.外码:
如果一个关系的一个或一组属性引用(参照)了另一个关系的主码,则称这个或这组属性为外码或外键(Foreignkey)。
3.关系数据库:
依照关系模型建立的数据库称为关系数据库。
它是在某个应用领域的所有关系的集合。
4.关系模式:
简单地说,关系模式就是对关系的型的定义,包括关系的属性构成、各属性的数据类型、属性间的依赖、元组语义及完整性约束等。
关系是关系模式在某一时刻的状态或内容,关系模型是型,关系是值,关系模型是静态的、稳定的,而关系是动态的、随时间不断变化的,因为关系操作在不断地更新着数据库中的数据。
5..实体完整性:
用于标识实体的唯一性。
它要求基本关系必须要有一个能够标识元组唯一性的主键,主键不能为空,也不可取重复值。
6.参照完整性:
用于维护实体之间的引用关系。
它要求一个关系的外键要么为空,要么取与被参照关系对应的主码值,即外码值必须是主码中已存在的值。
7.用户定义的完整性:
就是针对某一具体应用的数据必须满足的语义约束。
包括非空、唯一和布尔条件约束三种情况。
二、填空题
1.在学生(学号,姓名,性别,年龄,班长学号)、课程(课程号,课程名,学时数)、选修(学号,课程号,成绩)三个关系中:
•选修关系的主码是学号+课程号,外码学号参照学生关系的主码,外码课程号参照课程关系的主码。
•学生关系的主码是学号,外码是班长学号,参照学生关系的主码。
2.关系的三类完整性约束分别是实体完整性、参照完整性和用户定义的完整性。
3.关系数据库语言分为关系代数、关系演算和结构化查询语言三大类。
4.关系的5种基本操作是选择、投影、并、差、笛卡尔积。
三、问答题
1.简述基本关系的性质
•每个列具有相同的数据类型
•不同的列可出自同一个域,但必须是不同的名字
•列的顺序可以任意交换
•行的顺序也可以任意交换
•至少有一个候选码,用于标识元组的唯一性
•分量必须取原子值,即属性不能再分
2.写出关系模式的五元组形式化表示并说明各符号的含义。
关系模式是对关系的描述,形式化表示为:
R(U,D,DOM,F)
•R——关系名
•U——组成该关系的属性名集合
•D——属性组U中属性所来自的域
•DOM——属性向域的映象集合
•F——属性间的数据依赖关系集合
3.简述教材“学生-课程”示例数据库三个关系(表)的主外键及参照情况。
学生(学号,姓名,性别,专业号,年龄)
课程(课程号,课程名称,学分)
选修(学号,课程号,成绩)
•学号是学生关系的主键,课程号是课程关系的主键,选修关系的主键是学号+课程号属性组。
选修关系有两个外键,其中学号外键参照学生关系的主键(学号),课程号外键参照课程关系的主键(课程号)。
选修关系属于参照关系,学生关系和课程关系以至于是被参照关系。
4.
设R是包含k1个元组的n目关系,S是包含k2个元组的m目关系,写出R与S的笛卡尔积运算公式并说明其含义。
•运算公式为:
R×
S={trts|tr∈R∧ts∈S}
•运算结果为一个(n+m)目关系,其每个元组的前n列是关系R的一个元组,后m列是关系S的一个元组。
•运算结果包含由k1×
k2个元组,由来自R和S的所有元组交叉组合而成
5.写出关系选择(σ)运算的公式并说明其含义。
σF(R)={t|t∈R∧F(t)=‘真'
}
•选择运算的含义为从关系R中找出符合条件的所有元组。
式中:
F为选择条件,t表示元组,它是R元组的子集,并使逻辑表达式F(t)为真。
6.写出关系投影(π)运算的公式并说明其含义。
πA(R)={t[A]|t∈R}
•投影运算的含义为从关系R中选择出若干属性列组成新的关系。
式中A为R的部分属性组,t表示元组,t[A]表示由属性组A上的分量构成的元组。
第三章
1.SQL:
结构化查询语言的简称,是关系数据库的标准语言。
SQL是一种通用的、功能极强的关系数据库语言,是对关系数据存取的标准接口,也是不同数据库系统之间互操作的基础。
集数据查询、数据操作、数据定义、和数据控制功能于一体。
2.数据定义:
数据定义功能包括模式定义、表定义、视图和索引的定义。
3.嵌套查询:
指将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询。
1.SQL数据定义语句的操作对象有:
模式、表、视图和索引。
2.SQL数据定义语句的命令动词是:
CREATE、DROP和ALTER。
3.RDBMS中索引一般采用B+树或HASH来实现。
4.索引可以分为唯一索引、非唯一索引和聚簇索引三种类型。
5.填空完成下列查询条件表:
查询条件
运算符/谓词
比 较
=,>
,<
,>
=,<
=,!
>
,!
<
确定范围
BETWEENAND,NOTBETWEENAND
确定集合
IN,NOTIN
字符匹配
LIKE,NOTLIKE
空 值
ISNULL,ISNOTNULL
多重条件(逻辑运算)
AND,OR,NOT
操作对象
操作方式
创建
删除
修改
模式
CREATESCHEMA
DROPSCHEMA
表
CREATETABLE
DROPTABLE
ALTERTABLE
视图
CREATEVIEW
DROPVIEW
索引
CREATEINDEX
DROPINDEX
1.简述SQL的特点。
•集数据定义语言(DDL)、数据操纵(DML)和数据控制语言(DCL)于一体,可以独立完成数据库生命周期中的全部活动。
•属于高度非过程化语言,只要告知"
做什么"
,而无须了解"
如何做"
。
•采用集合操作方式,操作对象、查询结果均为元组的集合,效率高。
•同一语法结构多种使用方式。
既可用于联机交互操作,也可嵌入其它高级语言程序中使用。
•语言简单易用,完成核心功能只需9个动词。
2.写出SQL创建表语句的一般格式并说明其含义。
CREATETABLE<
表名>
(<
列名>
<
数据类型>
[<
列级完整性约束>
]
[,<
]]…
[,<
表级完整性约束>
]);
•<
可以是数据库系统支持的各种数据类型,包括长度和精度。
•列级完整性约束为针对单个列(本列)的完整性约束,包括PRIMARYKEY、REFERENCES表名(列名)、UNIQUE、NOTNULL等。
•表级完整性约束可以是基于表中多列的约束,包括PRIMARYKEY(列名列表)、FOREIGNKEYREFERENCES表名(列名)等。
3.写出SQL创建索引语句的一般格式并说明其含义。
CREATE[UNIQUE][CLUSTER]INDEX<
索引名>
ON<
(<
列名列表>
);
•UNIQUE:
表示创建唯一索引,缺省为非唯一索引。
•CLUSTER:
表示创建聚簇索引,缺省为非聚簇索引。
:
一个或逗号分隔的多个列名,每个列名后可跟ASC或DESC,表示升/降序,缺省为升序。
多列时则按为多级排序。
4.写出SQL查询语句的一般格式并说明其含义。
SELECT[ALL|DISTINCT]<
算术表达式列表>
FROM<
表名或视图名列表>
[WHERE<
条件表达式1>
[GROUPBY<
属性列表1>
[HAVING<
条件表达式2>
]]
[