《数据库系统概论》复习总结doc.docx
- 文档编号:29109549
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:31
- 大小:108.68KB
《数据库系统概论》复习总结doc.docx
《《数据库系统概论》复习总结doc.docx》由会员分享,可在线阅读,更多相关《《数据库系统概论》复习总结doc.docx(31页珍藏版)》请在冰豆网上搜索。
《数据库系统概论》复习总结doc
《数据库系统概论》(王珊•第五版)
★第一章绪论
•本章内容:
数据库系统概述、数据模型、数据库系统结构
•本章主要考点:
数据、数据库、★数据库管理系统的概念、概念模型、*ER图、三种数据模型、数据库的三级模式结构
1、试述数据、数据库、数据库系统、数据库管理系统的概念
(1)数据(Data):
描述事物的符号记录称为数据。
(2)数据库(DataBase,简称DB):
数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
(3)数据库系统(DataBaseSystem,简称DBS):
数据库系统是指在计算机系统屮引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
(4)数据库管理系统(DataBaseManagementSystem,简称DBMS):
数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
2、对于DB、DBS、DBMS的关系,下列哪一种描述是正确的(B)
A、DB包括DBS、DBMSB、DBS包括DB、DBMS
C、DBMS包扌舌DBS、DBD、以上都不对
3、概念模型中的术语:
实体、属性、码、域、实体型、实体集
实体:
客观存在并可以相互区分的事物叫实体。
属性:
实体所具有的某--特性,一个实体可由若干个属性来刻画。
码:
惟一标识实体的属性集称为码。
域:
域是一组具有相同数据类型的值的集合。
实体型:
具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。
实体集:
同型实、体的集合称为实体集。
4、目前数据库领域屮最常用的逻辑数据模型有层次模型、网状模型、关系模型等。
5、数据库管理系统的主要功能有哪些?
(冷叶顷)
(1)数据库定义功能
(2)数据存取功能(3)数据库运行管理(4)数据库的建立和维护功能。
★6、实体联系图(E—R图)
实体型:
用矩形表示,矩形框内写明实体名;
属性:
用椭圆形表示,并用无向边将其与相应的实体连接起來;
联系:
用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起來,同时在无向边旁标上联系的类型(1:
1或1:
n或m:
n)。
▲例:
假设教学管理规定:
1一个学生可选修多门课,一门课有若干学生选修;
2一个教师可讲授多门课,一门课只有一个教师讲授;
3一个学生选修一门课,仅有一个成绩。
学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。
要求:
根据上述语义画1BER图,要求在图中画出实体的属性并注明联系的类型;
解:
根据以上规则画出对于的E—R图如下
7、数据库系统的三级模式结构:
应用A||用川B应川C应用D应用E
外
外模式2
外模式3
外模式/根式映偉
内懊式/樓式吱像
内怏式
数据岸
外模式:
亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数捱视图,是与某一应用有关的数据的逻辑表示。
模式:
亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
模式描述的是数据的全局逻辑结构。
外模式涉及的是数据的局部逻辑结构,通常是模式的子集。
内模式:
亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。
数据库系统在这三级模式之间提供了两层映像:
外模式/模式映像和模式/内模式映像。
这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
8、对数据库中进行增加记录类型或增加数据项,通过调整下歹〔哪一级映像,可以使应用程序尽可能保持不变,便达到了哪一种数据的独立性(A)
A、外模式/模式映像,逻辑数据独立性
B、外模式/模式映像,物理数据独立性
C、模式/内模式映像,逻辑数据独立性
D、模式/内模式映像,物理数据独立性
9、数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是_(D)
A.外模式B.内模式C.存储模式D.模式
10、层次模型不能直接表示(C)。
A.1:
1关系B.1:
m关系C.m:
n关系D.1:
1和1:
m关系
★第二章关系数据库(重点)
•本章内容:
关系数据结构及形式化定义、关系操作、关系的完整性、关系代数
•本章主要考点:
概念、关系的完整性、★★关系代数
1、关系数据库管理系统应能实现的专门关系运算包括3。
A.排序、索引、统B.选择、投影、连接C・关联、更新、排序D.显示、打印、制表
2、自然连接是构成新关系的有效方法。
一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的(D)。
A.元组B.行C.记录D.属性
3、关系运算中花费时间可能最长的运算是_(C)。
A.投影B.选择C.笛卡尔积D.除
4、关系模式的任何属性(A)。
A.不可再分B.可再分C.命名在该关系模式中可以不惟一D.以上都不是
5、在关系代数运算中,五种基本运算为(C)。
A.并、差、选择、投影、自然连接B.并、差、交、选择、投影
C.并、差、选择、投影、乘积D.并、差、交、选择、乘积
6、要求学生的年龄在15至40岁之间,是关系模型的哪一种完整性规则(C)
A.参照完整性B.实体完整性C.用户定义的完整性规则D.以上都不是
7、关系R的元数为5,关系S的元数是4,则RXS可以等价于下列哪一种(B)
2>3
A.。
2>3(RxS)B.o2>7(RxS)C.RMSD.o6<2(RxS)
8、关系的三类完整性约束:
实体完整性规则:
若属性A是基本关系R的主属性,则属性A不能取空值
参照完整性规则:
若属性(或属性组)F是基本关系R的外码它与基本关系S的主码Ks相对
应(基本关系R和S不一定是不同的关系),则对于R屮每个元组在F上的值必须为:
•或者取空值(F的每个属性值均为空值)
•或者等于S中某个元组的主码值
用户定义的完整性:
针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求
运算符
含义
运算符
含义
集合运算符
U
■
n
X
井
差
交
笛卡尔积
比较运算符
>
<
<
<>
大于大于等干小于
小于等干等于不等于
运算符
含义
运算符
含义
专门的关
系运算符
0
n
X
+
胡师昨除
逻辑运算符
A
V
非与或
★★9、关系代数(冷叶顷)
(1)RUS仍为
n目关系,由属于R或属于S的元组组成
R
S
RUS
A
B
CA
〃
c川
B
C
ClOf
6
O|
5Of
b、
巧
6
C|
c*6
6
ClO|
C*
(2)
R・S仍为n目关系,由属于R而不属于S的所有元组组成
(3)
A
B
c
O|
C|
O|
5
A
B
C
Ol
f>2
6
R
RHS
RCS仍为n目关系,由既属于R又属于S的元组组成
(4)笛卡尔积:
RxS列:
(n+m)列元组的集合,元组的前n列是关系R的一个元组,后m列是关系S的一个元组,行:
klxk2个元组
R
A
B
C
s
Cl
O|
Ci
S
A
H
C
仿
6
th
6
6
b2
Ci
(5)选择:
选择运算符的含义:
在关系R中选择满足给定条件的诸元组
oF(R)={t|teRAF(t)=嗔'}
F:
选择条件,是一个逻辑表达式
例如:
查询信息系(IS系)全体学生Osdcpt=is*(Student)
(6)投影:
投影运算符的含义:
从R中选择击若干属性列组成新的关系
心(R)={t|A]|teR}A是R中的属性列
例如:
查询学生的姓名和所在系,即求Student关系上学生姓名和所在系两个属性上的投影
兀Snamc,sdcpt(Student)
(7)连接:
连接运算的含义:
从两个关系的笛卡尔积中选取属性间满足一定条件的元组
={aMfes人佃询}分为等值连接、一般连接、自然连接
例如:
关系R和关系S如I、所示:
H
E
b、
3
7
by
10
b、
2
2
一般连接R层的结果如下:
RxS
CK
A
RB
c
SB
E
Ol
b.
5
仿
7
bi
5
by
10
5
h
6
b2
7
Ol
■
6
by
10
Oi
h
8
b\
10
自然连接尺XS的结果如下:
A
B
C
E
5
3
g
6
7
“2
8
10
°2
8
2
(8)除:
给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。
的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。
R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在X属性列上的投影:
元组在X上分量值x的象集Yx包含S在Y上投影的集合,记作:
R-S={tr[X]|treRA7cY(S)cYx}
例如:
设关系R、S分别为下图的(a)和(b),R+S的结果为图(c)
R
A
B
c
B
c
D
“i
h\
Ci
b\
Cl
di
6
b、
6
b2
Cl
d、
ay
叽
Q
h
Cy
d,
Ol
b2
Cj
(b)
a.
b.
5
R+S
Oi
c、
A
Ol
C\
Qi
(a)
(c)
★例:
设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:
S(SNO,SNAME,STATUS,CITY);
P(PNO,PNAME,COLOR,WEIGHT);
J(JNO,JNAME,CITY);SPJ(SNO,PNO,JNO,QTY);
供应商表S由供应商号码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成;零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;工程项目表J由工程项目代码(JNO)、工程项忖名(JNAME)、工程项
目所在城市(CITY)组成;供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。
试用关系代数完成如下查询:
(1)求供应工程J1零件的供应商号码SNO;
(2)求供应工程J1零件P1的供应商号码SNO;
(3)求供应工程J1零件为红色的供应商号码SNO;
(4)求没有使用天津供应商生产的红色零件的工程号JNO;
(5)求至少用了供应商S1所供应的全部零件的工程号JNO。
解:
(1)求供应工程J1零件的供应商号码SNO:
兀Sno(6no=f(SPJ))
(2)求供应工程J1零件Pl的供应商号码SNO:
兀Sno(6no='Jl'八Pno='Pl'(SPJ))
(3)求供应工程J1零件为红色的供应商号码SNO:
兀Sno(°Jno=*jr(OCOLOR=^(P)XSPJ))或
兀Sno(^Jno=jr(SPJ)IXI(OcOLOR=,a*(P))
(4)求没有使用天津供应商生产的红色零件的工程号JNO:
兀Jno(SPJ)■兀JNO(Ocity=,天淞八Color=^(SOOSPJXlP))或
兀Jno(SPJ)■兀JNO(Ocity=,W(S)[XlSPJ[X]CColoh红,(P))
(5)求至少用了供应商SI所供应的全部零件的工程号JNO:
兀Jno,Pno(SPJ)bJlpno(OSno=,Sl,(SPJ))
★第三章关系数据库标准语言SQL(重点〉
•本章内容:
SQL概述、数据定义、数据查询、数据更新、视图
•本章主要考点:
基本概念、★★数据查询的基本语句操作、数据更新语句
1、SOL语言是(C)语言。
A.层次数据库B.网络数据库C.关系数据库D.非数据库
2、SQL语言具有两种使用方式,分别称为交互式SOL和(C)。
A.提示式SQLB.多用户SQLC.嵌入式SQLD.解释式SQL
A.S
B.SC,C
C.S,SC
D.S,C,SC
3、假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)o要查找选修“COMPUTER”课程的“女学生姓名,将涉及到关系(D)。
FROMv表名或视图名>[,v表名或视图名>]...
[WHEREv条件表达式〉]
[GROUPBY<列名1>[HAVING<条件表达式〉]]
[ORDERBY<列名2>[ASC|DESC]];(注:
SQL语句中不区分大小写)
①单表查询
(1)选择表中的若干列:
查询指定列:
例:
查询全体学生的学号与姓名
SELECTSno,Sname
FROMStudent;
查询所有列:
(将<目标列表达式〉指定为*)例:
查询全体学生的详细记录。
SELECT*
FROMStudent;
查询结果计算的值:
例:
查全体学生的姓名及其出生年份。
SELECTSname,2012-Sage/*假定当年的年份为2012年,减去年龄即得出生年份*/
FROMStudent;
(2)选择表中的若干元组
取消取值重复的行:
(指定DISTINCT关键词,去掉表中重复的行)
例:
查询选修了课程的学生号码
SELECTDISTINCTSno(使用DISTINCT关键词取消了重复学号的行)
FROMSC;
查询满足条件的行:
(WHERE语句)
査询条件
谓词
比较
=/>9<9>=9<=/!
=><>9!
>j!
确定范團 BETWEENAND,NOTBETWEENAND 确走集合 IN,NOTIN 字符匹配 LIKE,NOTLIKE 空ffl ISNULL,ISNOTNULL 多靈条件(逻辑运蔓》 AND,OR,NOT 例: 查询计算机科学系全体学生的名单。 (比较) SELECTSname FROMStudent WHERESdept='CS'; 例: 查询年龄在20〜23岁(包括20岁和23岁)Z间的学生的姓名、系别和年龄(确定范围) SELECTSname,Sdept,Sage FROMStudent WHERESageBETWEEN20AND23; 例: 查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别。 (确定集合) SELECTSname,Ssex FROMStudent WHERESdeptIN(fIS\MVJCSJ; 例: 查询学号为200215121的学生的详细情况。 (字符匹配) SELECT* FROMStudent WHERESnoLIKE<200215121、 例: 某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩。 查询缺少成绩的学生的学号和相应的课程号。 (空值) SELECTSno,Cno FROMSC WHEREGradeISNULL/*不能用'='代替IS*/ 例: 査询计算机系年龄在20岁以下的学生姓名。 (多重条件) SELECTSnamc FROMStudent WHERESdept='CS*ANDSage<20; (3)ORDERBY子句 可以按一个或多个属性列排序。 升序: ASC;降序: DESC;缺省值为升序例: 查询选修了3号课程的学生的学号及其成绩,查询结果按分数降序排列。 SELECTSno,Grade FROMSC WHERECno='3' ORDERBYGradeDESC; 统计元组个数统计一列中值的个数计算一列值的总和计算一列值的平均值求一列中的最大值求一列中的最小值 (4)聚集函数 COUNT([DISTINCTIALL]*) COUNT([DISTINCT|ALL]<列名〉)SUM([DISTINCT|ALL]<列名〉)AVG([DISTINCT|ALL]<列名〉)MAX([DISTINCT|ALL]<列名〉)MIN([DISTINCT|ALL]<列名〉)例: 计算1号课程的学生平均成绩。 SELECTAVG(Grade) FROMSC WHERECno=11'; ②多表查询 (1)等值查询 例: 查询每个学生及其选修课程的情况 SELECTStudent.*,SC.* FROMStudent,SC WHEREStudent.Sno=SC.Sno; (2)嵌套查询 带有IN谓词的子查询: 例: 查询与“刘晨”在同一个系学习的学生 SELECTSno,Snamc,Sdept FROMStudent WHERESdeptIN (SELECTSdept FROMStudent WHERESname=4刘晨J; 带有比较运算符的子查询: (当内查询的结果是一个值时,可以用=代替IN)例: 查询与“刘晨”在同一个系学习的学生 SELECTSno,Snamc,Sdept FROMStudent WHERESdept= (SELECTSdept FROMStudent WHERESnamc=4刘晨J; 带有ANY或ALL谓词的子查询 >ANY大于子査询结果中的某个值 >ALL大于子査询结果中的所吉值 >=ANY大于弩于子童询结果中的某个值 >=ALL大于爹于子E询结果中的所有值 <=ANY小于稈于子登询结果中的某个值 <=ALL小于衿于子E询结果中的所有值 =ANY爷于子査询结果中的某个值 二ALL爷于子査询结果中的所有值(通當没有实际童义〉 1= 匸ALL不爭于子査询结果中的任何一个值 例: 查询其他系中比计算机科学某一学生年龄小的学生姓名和年龄 SELECTSname,Sage FROMStudent WHERESage FROMStudent WHERESdept=1CS') ANDSdept<>4CS1;严这句是父查询块屮的条件*/ 带有EXISTS谓词的子查询: 相当于存在量词久带有EXISTS谓词的子査询不返回任何数据,只产生逻辑真值“true”或逻辑假值“false"。 例: 查询所有选修了1号课稈的学生姓名。 SELECTSname FROMStudent WHEREEXISTS (SELECT* FROMSC WHERESno=Student.SnoANDCno='1*); (3)集合查询(冷叶顷) 集合操作的种类: 并操作UNION,交操作INTERSECT,差操作EXCEPT 例: 查询计算机科学系的学生及年龄不大于19岁的学生。 (并) SELECT* FROMStudent WHERESdept='CS' UNION SELECT* FROMStudent WHERESage<=19; 例: 查询计算机科学系的学生与年龄不大于19岁的学生(交) SELECT* FROMStudent WHERESdepKCS' INTERSECT SELECT* FROMStudent WHERESagc<=19 例: 查询计算机科学系的学生与年龄不大于19岁的学生。 (差) SELECT* FROMStudent WHERESdept^CS1 EXCEPT SELECT* FROMStudent WHERESage<=19; ★例题: 设学生课程数据库中有三个关系: 学生关系S(S#,SNAME,AGE,SEX) 学习关系SC(S#,C#,GRADE) 课程关系C(C#,CNAME) 其中S#(学号)、C#(课程号)、SNAME(姓名)、AGE(年龄)、SEX(性别)、GRADE(成绩)、CNAME(课程名) 用SQL语句表达下列操作 (1)检索选修课程名称为“MATHS”的学生的学号与姓名 (2)检索至少学习了课程号为“C1”和“C2”的学生的学号 (3)检索年龄在18到20之间(含18和20)的女生的学号、姓名和年龄 (4)检索平均成绩超过80分的学生学号和平均成绩 (5)检索选修了全部课程的学生姓名 (6)检索选修了三门课以上的学生的姓名 解: (1)SELECTSNAME,S# FROMS,SC,C WHERES.S#=SC.S# ANDC.C#=SC.C# ANDCNAME=,MATHS' (2)SELECTS# FROMSC WHERECNOO,ANDS#IN(SELECTS# FROMSC WHERECNO='C2') (3)SELECTS#,SNAME,AGE FROMS WHEREAGEBETWEEN18AND20 (4)SELECTS#,AVG(GRADE) FROMSC GROUPBYS# HAVINGAVG(GRADE)>80 (5)SELECTSNAME FROMS WHERENOTEXISTS (SELECT* FROMC WHERENOTEXISTS (SELECT* FROMSC WHERES#=S.S#ANDC#=C.C#) ) (6)SELECTSNAME FROMS,SC WHERES.S#=SC.S# GROUPBYSNAME HAVINGCOUNT(*)>3 ◎第四章数据库安全性 •本章内容: 计算机安全性概述、数据库安全性控制、审计、数据加密 •本章主要考点: 基本概念、数据库安全性控制 1、下面哪个不是数据库系统必须提供的数据控制功能二型。 A.安全
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库系统概论 数据库 系统 概论 复习 总结 doc