2003年度高级程序员上午试题解析-数据库篇

       数据库基础知识包括数据库模型 , 关系数据库的基础知识 , 数据库系统的结构 ,SQL 的使用 , 常用数据库管理系统的知识。考生在复习时除了看教材相关部分外,还应该多做历届相关真题,同时可参考《数据库系统概论》萨师煊(第三版) , 因为该书中有更详细的一些概念说明,而教材中有些地方没有讲到。

 1.在数据库逻辑结构的设计中,将E-R模型转换为关系模型应遵循相关原则。对于三个不同实体集和它们之间的多对多联系m:n:p,最少可转换为____个关系模式。

 A. 2     B3     C.  4    D. 5

答案:C

解析:书本上讲过两个不同实体集和它们之间的多对多联系时,可把两个不同实体集转换成两个关系模式,多对多的联系可以转换成一个关系模式。对于三个不同实体集和它们之间的多对多联系m:n:p,也是把三个不同实体集转换成三个关系模式,其中的两个多对多的联系最少可以转换成一个关系模式,所以共4个关系模式。

 2.给定关系模式R(UF)U={ABCDE}F={BADAAEACB},其属性AD的闭包为__(1)__,其候选关键字为__(2)__

(1) A. ADE   B. ABD   C. ABCD        D. ACD

(2) A. ABD BADE      CACD      DCD

答案:(1) A  (2) D

解析:(1)闭包的定义在教材中没有给出,具体的闭包定义考生可参考《数据库系统概论》萨师煊(第三版),第184页。求属性集的闭包可由固定的算法推出:设X(0)=AD;计算X(1);逐一扫描F集合中各个函数依赖,找左部是ADAD的函数依赖,得到:AEDA。于是X(1)= X(0) ∪EA=ADE。由于X(0)X(1),所以再逐一扫描F集合中各个函数依赖,找左部是ADE的子集的那些函数依赖,得到 AEDA。于是X(2)= X(1) ∪EA=ADE。由于X(2)= X(1),所以算法到此为止,其属性AD的闭包为X(2),即ADE 2)对于键和函数依赖的关系,有两个条件:设关系模式R(A1,A2...An)FR上的函数依赖集,XR的一个子集,①XA1A2...AnF+ (它的意思是X能够决定唯一的一个元组) ②不存在X的真子集Y,使得Y也能决定唯一的一个元组,则X就是R的一个候选键(它的意思是X能决定唯一的一个元组但又没有多余的属性集)。可以利用Armstrong 的推理规则,求出X使得XABCDE。由DAACB,可得:DCB,由BA得:DCA,又由AE得:DCE。而DCCDCD。所以由上可知:DCABCDE。故候选关键字为CD

 3.若有关系模式R(ABC)S(CDE),对于如下的关系代数表达式:

E=∏A,DB<'2003'∧R.C=S.C∧E='80'(R×S))

E=∏A,DR.C=S.CB<'2003'(R)×σE='80'(S)))

E=∏A,DB<'2003'(R)σE='80'(S))

E=∏A,DB<'2003'∧E='80'(RS))
正确的结论是__(20)__ ,表达式 __(21)__ 的查询效率最高。

(1) A. E1≡E2≡E3≡E4                                  B. E3≡E4E1≠E2

C. E1≡E2E3≠E4                                D. E3≠E4E2≡E4

(2) A. E1                  C. E3                          B. E2                         D. E4

答案:(1A  (2) C

解析:(1)这道题的查询含义是:找出R.C=S.C时,其中B<'2003'E='80',只含AD属性的这些记录。从E1E2E3E4式子中看出它们是等价的。(2)查询优化的目的就是为了系统在执行时既省时间又能提高效率。优化的策略主要有以下几点:①在关系代数表达式中尽可能早地执行选择操作(早选择)(这是最总要最基本的一条) ②把笛卡尔积和随后的选择操作合并成F联接运算(F联接) ③同时计算一连串的选择和投影操作(同时算) ④保留同一子表达式的结果 ⑤适当对关系文件进行预处理     ⑥计算表达式之前先估计一下怎么计算合算。根据第一条可知E3是查询效率最高的

 4.集合A={dbc}上的二元关系R为:R={,,)},则二元关系R____

A.自反的  B.反自反的     C.对称的  D.传递的

答案:D

解析:这道题属于离散数学范围。考生只需要清楚自反、反自反、对称、传递的含义,就能轻松解题。R不是自反的,因为R中不含。因为R中含有但不含< b,a >。也不是反自反的,因为含有。也不是对称的,因为R中含有但不含< b,a >R是传递的,因为R中只有可以发生传递,而传递后的结果含在其中。

 

你可能感兴趣的:(2003年度高级程序员上午试题解析-数据库篇)