2023数据库复习题总结_第1页
2023数据库复习题总结_第2页
2023数据库复习题总结_第3页
2023数据库复习题总结_第4页
2023数据库复习题总结_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

?数据库与信息系统?参考题

一、根本知识点

1.数据库管理系统由一个互相关联的数据的集合和一组用以访问这些数据的程序组成。这

些数据用以描述某个特定的企业。DBMS的根本目标是要提供一个可以让人们方便地、

高效地存取信息的环境。

2.数据库系统用于存储大量信息。对数据的管理既涉及到信息存储结构的定义,又涉及到

信息操作机制的提供。另外,数据库系统还必须提供所存储数据的平安性保证,即使在

系统崩溃或有人企图越权访问时也应如此。如果数据被多用户共享,那么系统还必须设

法防止可能产生的异常结果。

3.数据库系统的一个主要目的是要提供应用户数据的抽象视图,也就是说,系统隐藏了数

据存储和维护的细节。这是通过定义三个可对数据库系统进行观察的抽象层次来实现

的。这三个层次是:物理层、逻辑层和视图层。

4.数据库结构的根底是数据模型,一个用于描述数据、数据间关系、数据语义和数据约束

的概念工具的集合。

5.随着时间的推移,信息会被插人或删除,数据库随之也发生了改变。特定时刻存储在数

据库中的信息的集合称作数据库的一个实例。数据库的总体设计称作数据库模式。

6.在某个层次上修改模式而不影响较高一层模式的能力叫做数据独立性。有两个层次的数

据独立性:物理数据独立性和逻辑数据独立性。

7.数据库模式通过一系列用数据定义语言(DDL)表达的定义来描述。DDL语句经过编译,

产生存储在一个特殊文件中的一系列表,这个文件称作数据字典,因此数据字典中存储

的是元数据。

8.数据操纵语言DML是使得用户可以访问和操纵数据的语言,主要有两种:过程化的DML

和非过程化的DML,过程化的DML要求用户指明需要什么数据以及如何获得这些数据,

非过程化的DML只要求用户指明需要什么数据,而不必指明如何获得这些数据。

9.事务管理器负责保证无论是否有故障发生,数据库都要处于一致的(正确的)状态。事务

管理器还保证并发事务的执行互不冲突。存储管理器是在数据库中存储的低层数据与应

用程序及向系统提交的查询之间提供接口的程序模块。存储管理器负责与磁盘上存储的

数据进行交互。

10.实体一联系(E-R)数据模型基于对现实世界的这样一种认识:世界由一组根本对象(称

作实体)及这些对象间的联系组成。此模型的主要目的是效劳于数据库设计过程,它的

开展是为了帮助数据库设计,这是通过允许定义企业模式来实现的。企业模式代表了数

据库的全局逻辑结构,这种全局结构可以用E-R图进行图形化表示。

11.实体是实际存在的可区别于其他对象的对象,我们通过把每个实体同描述该实体的一组

属性相联系来将它与其他对象相区别。联系是多个实体间的相互关联。相同类型的所有

实体的集合构成实体集,相同类型的所有联系的集合构成联系集。

12.映射的基数指明另一实体通过联系集可以和实体集中的多少个实体相联。

13.数据库建模的一个重要任务是要说明实体之间以及联系之间如何相互区别二概念上来

说,各个实体或联系是互不相同的,但从数据库的角度来看,它们的差异必须用属性表

示出来。为了进行这样的区别,为每个实体集指定一个主码。主码是一个或多个属性的

集合,这些属性的整体可以使我们在实体集中唯一确定一个实体或在联系集中唯一确定

一个联系。

14.特殊化和概括定义了一个高层实体集和一个或多个低层实体集之间内容上的联系。特殊

化是取出高层实体集的一个了集来形成一个低层实体集。概括是用两个或多个不相交的

(低层)实体集的并集来形成一个高层实体集。高层实体集的属性被低层实体集继承。

15.ER模型的一个局限是它不能表示联系间的联系,解决的方法是采用聚集。聚集是一种

抽象,它将联系集看作高层实体集,这样,联系集及其相关实体集就可以像其他实体一

样被看作高层实体集。

16.符合ER图的数据库可以用表的集合来表示。数据库的每个实体集和联系集都有唯一与

之对应,表名即为相应的实体集或联系集的名称。每个表有多个列,每列有其唯一列名

的表。

17.关系数据模型建立在表的集合的根底上。数据库系统的用户可以对这些表进行查询,可

以插入新元组、删除元组以及更新(修改)元组。表达这些操作的语言有几种。元组关系

演算和域关系演算是非过程化语言,代表了关系杳询语言所需的根本能力。关系代数是

一种过程化语言,在能力上它等价于限制在平安表达式范围内的关系演算的两种形式::

关系代数定义了关系查询语言中使用的根本运算。

18.域约束指出了与属性相关联的可取值的集合。它也可以禁止某属性上取空值。参照完整

性约束保证一个关系的给定属性集上的取值也出现在另一关系的某个属性集上。函数依

赖是码依赖的扩展。它要求某属性集的值唯一确定另一属性集的值。

19.良好数据库设汁的三个准那么:1)BCNF2)无损连接。3)保持依赖。

20.什么是超码、候选码、主码、外码?

答:(码是数据系统中的根本概念。所谓码就是能唯一标识实体的属性,他是整个实体集的

性质,而不是单个实体的性质。它包括超码,候选码,主码。超码是一个或多个属性的集合,

这些属性可以让我们在一个实体集中唯一地标识一个实体。)当一个实体集中包括有多个码

时,通常要选定其中的一个码为主码,其他的码就是候选码。实体集中不能唯一标识实体属

性的叫次码。P23

20.关系代数六个根本运算包括哪些?

答:"选择"、"投影"、笛卡尔积、并集、差集和“重命名”

21.空值NULL的含义是什么?

答:空值不是空格值,它是跳过或不输的属性值,用Null表示,空值说明不知道或无意思。

22.常见的聚集函数有哪些?

答:计算count(数目),sum(和),avg(均值),max(最大值)和min(最小值)的函

数。

23.解释ACID的具体含义。

答:ACID,指数据库事务正确执行的四个根本要素的缩写。包含:原子性(Atomicity)、一

致性(Consistency)>隔离性(Isolation),持久性(Durability)。一个支持事务

(Transaction)的数据库系统,必需要具有这四种特性,否那么在事务过程(Transaction

processing)当中无法保证数据的正确性,交易过程极可能达不到交易方的要求。

原子性:整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中

间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状

态,就像这个事务从来没有执行过一样。

一致性:在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。

隔离性:两个事务的执行是互不干扰的,一个事务不可能看到其他事务运行时,中间

某一时刻的数据。

持久性:在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,

并不会被回滚。

24.视图的作用是什么?

答:视图是根据子模式设计的关系,它是由一个或几个根本表(或已定义的视图)导出的虚

表。视图能够简化用户的操作:视图机制可以使用户以不同的方式看待同一数据;视图对数

据库的重构提供了一定程度的逻辑独立性;视图可以对机密的数据提供平安保护。

25.常见的完整性约束有哪些?(没找到)

26.联系有三种常见的多重性,即多对多、多对一和一对一,它们的含义是什么?

在〈数据库系统原理及应用教程》的23页在湖旁边那儿有卖的,3元本

27.实体-联系图主要构件包括哪些?(9个)(没找到)

28.如何将ER图转换成关系模式?

在〈数据库系统原理及应用教程》的56页在湖旁边那儿有卖的,3元本

29.什么是BCNF?

答:BCNF是由Boyce和Codd提出的,比3NF又进了一步,通常认为是修正的第三范式.

所谓第三范式,定义是关系模式R〈U,F>中假设不存在这样的码X,属性组Y及非主属性

Z,使得X—>Y,Y—>Z成立,(不存在Y—>X),那么称R<U,F>为3NF.

即当2NF消除了非主属性对码的传递函数依赖,那么称为3NF。

对3NF关系进行投影,将消除原关系中主属性对码的局部与传递依赖,得到一组BCNF

关系。

BCNF定义,关系模式中,假设X函数确定Y且Y不在X内时X必含有码,那么此关系属于

BCNF。

一个满足BCNF的关系模式的条件:

1.所有非主属性对每一个码都是完全函数依赖。

2.所有的主属性对每一个不包含它的码,也是完全函数依赖。

3.没有任何属性完全函数依赖于非码的任何一组属性。

30.包括课堂上所讲授的主要内容。(第1章引言,第2章关系数据库,第3章SQL,第6

章数据库设计与ER模型〕

二、设计局部

1.考虑下面的关系数据库,主码加了下划线。给出关系代数表达式来表示以

下每个查询:

branch(branchname,branch_city,assets)

customer(customername,customer_street,customer_city)

account(accountnumber,branch_name,balance)

loan(loannumber,branch_name,amount)

depositor(customername,accountnumber)

borrower(customername,loannumber)

1)Findallloansofover$900.

2)Findtheloannumberfbreachloanofanamountgreaterthan

$1200.

3)Findthenamesofallcustomerswhohavealoan,anaccount,orboth,fromthe

bank.

4)FindthenamesofallcustomerswhohavealoanatthePerryridgebranch.

5)FindthenamesofallcustomerswhohavealoanatthePenyridgebranchbut

donothaveanaccountatanybranchofthebank.

6)Findthenamesofallcustomerswhohavealoanandanaccountatbank.

7)Findthenameofallcustomerswhohavealoanatthebankandtheloan

amount.

8)Findallcustomerswhohaveanaccountfromatleastthe“Downtown”and

theUptown"branches.

9)FindallcustomerswhohaveanaccountatallbrancheslocatedinBrooklyn

city.

解:(1)aamou(>900(loan)

(2)TCloan_number(Camout>1200(lOclH))

(3)TCcustonier_name(depositor)U乃customer_name(borrower)

(4))customer,name(O'branch_name=Perr)Tidge(loanooborrower))备注:8为连接,在

word中没找到那个符号,所以在此处用8代替,下面都是这样。

(5)71customer_name(O'branch_name=Pcrryridge〔loan00borrower))-71customer_name

(O'branch_name=PerryridgeUoanooaccout))

(6)冗customer_name(depositor)Q71customer_name(borrower)

(7)TCcustomer_name,amount(loanooborrower)

(8)不懂那句英文什么意思,纠结!

(9)(Jbranch_city=Brooklyn(CustomerXdepositor)

2.(实践习题3.1)考虑图3-11定义的保险公司数据库,其中加下线线的是

主码。对这个关系数据库写出如下的SQL查询语句:

1)找出1989年其车辆出过交通事故的人员总数。

2)向数据库中增加一个新的事故,对每个必需的属性可以设定任意值。

3)删除“Johnsmith”的马自达车(Mazda)。

4)(习题3.8)找出和Johnsmith的车有关的交通事故数量。

5)(习题3.8)对事故报告编号为“AR2197”的且车牌是AABB2000的车辆

损坏保险费用更新到3000美元。

Person(driverid,name,address)

Car(license,model,year)

Accident(reportnumber,data,location)

Owns(drive】id,license)

License(driverid,license,reportnumber,damage_amount)

图3-11保险公司数据库

解:(1)SELECTCOUNT(*)

FROMLicense,Accident

WHERELicense.report_name=Accident.report_nameANDAccident.date=1989

⑵INSERT

INTOAccidenKreportnumber,data,location)

VALUES(1,2,3)

(3)DELETE

FROMCar

WHEREmodel=MazdaANDlicense=(SELECTlicense

FROMPerson,Owns

WHEREPerson.driver_id=License.driver_idANDP=9Johnsmith9)

(4)SELECTCOUNT(*)

FROMPerson,License

WHEREPerson.driver_id=License.driver_idANDP=9Johnsmith9

(5)UPDATELicense

SETdamage_amount=3000

WHEREreport_number=,AR2179'ANDLicense='AABB2000'

3.1实践习题3.2)考虑图3-12的雇员数据库,其中加下划线的是主码。为

下面每个查询语句写出SQL表达式:

1)找出所有为FirstBankCorporation工作的雇员名字和居住城市。

2)找出所有为FirstBankCorporation工作且薪金超过1万美元的雇员名字、

居住街道和城市。

3)找出所有不为FirstBankCorporation工作的雇员。

4)找出数据库中工资比SmallBankCorporation的每个雇员都高的所有雇员。

5)假设一个公司可以在好几个城市有分部。找出位于SmallBankCorporation

所有所在城市的所有公司。

6)找出雇员最多的公司。

7)找出平均工资高于FirstBankCorporation平均工资的所有公司。

Employee(employeename,street,city)

Works(emDloyeename,company_name,salary)

CompanY(companyname,city)

Manages(employeename.manager_name)

图3-12雇员数据库

解:(l)SELECTemployee_name,city

FROMEmployee,Works

WHEREEmployee.employee_name=Works.employee_nameAND

Workspany_name=FistBankCooporation

(2)SELECTemployee_name,city,street

FROMEmployee,Works

WHEREEmployee.employee_name=Works.employee_nameAND

Workspany_name=FistBankCooporationANDsalary>10000

(3)SELECTemployee_name

FROMWorks

WHEREWorkspany_name!=FistBankCooporation

(4)SELECTemployee_name

FROMWorks

WHEREsalary>(SELECTMAX(salary)

FROMWorks

WHEREWorkspany_name=SmallBankCooporation)

(5)SELECTcompany_name

FROMCompany

WHEREcity=(SELECTcity

FROMCompany

WHEREWorkspany_name=SmallBankCooporation)

(6)SELECTcompany_name

FROMWorks

WHEREMAX(COUNT(employee_name))

GROUPBYcompany_name

(7)SELECTcompany_name

FROMWorks

WHEREAUG(salary)>(SELECTAUG(salary)

FROMWorks

WHEREWorkspany_name=FistBankCooporation)

GROUPBYcompany_name

4.(实践习题6.1)为车辆保险公司设计一个E-R图。每个客户有一辆或多辆

车。每辆车可以关联0次或任意屡次事故的记录。并构造适宜的关系表。

需要画图,在word里不方面,所以此题略!

5.(实践习题6.2)大学的注册办公室维护关于以下实体的数据:

(a)课程,包括编号、名称、学分、课程提纲和选修条件;

(b)课程提供,包括课程编号、年、学期、节数、教师〔可能多个)、时间和

教室;

(c)学生,包括学生标识、名字和方案(program);

(d)教师,包括标识号、名字、系和职称。

此外,学生课程和登记和学生所选的每门课程的成绩评定都要适当地建模。

(进行ER模型的设计,并构造适宜的关系表。)

需要画图,在word里不方面,所以此题略!

6.(实践习题6.3)考虑一个用于记录学生各门课程考试成绩的数据库。

(a)构造一个将考试建模成实体的E-R图,为以上的数据库设计一个三元联

系。

(b)构造另一个E-R图,其中只用二元联系来连接sutdents

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论