您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 数据库系统试题2011A卷定稿答案
1一、[14分]学院教师人数学院名专业人数课程教师管理讲授领导工作证号姓名参加工作时间电话号码年限领导编号ISA必修型选修型版本号专业要求课时数课程名领导者被领导者课程-章节章节内容章节号学分1.主键、属性、一对多关系、角色名称、disjoint、完全参与,错1个,扣1分2.角色关系、弱实体集、属性继承,错1个扣3分3.不重复扣分二、[16分]设有属于1NF的关系模式R=(A,B,C,D,E),为解题方便,假设R上的函数依赖集闭包F+={D-BE,A-C,CA-DE,D-A},回答以下问题。1、R是否满足BCNF,分析原因。如果不满足请根据F中给出的函数依赖次序进行BCNF分解。[6分]回答满足3分,满足分析原因3分;判断错误,但根据分析原因情况考虑,最多3分。2、R是否满足3NF,分析原因。如果不满足请根据3NF分解算法对关系模式R进行分解。[6分]回答满足3分,分析原因3分,;判断错误,但分析原因情况考虑,最多3分。三、[18分,每小题3分]1、查询所有在London支行没有贷款帐户的客户编号customer_id(customer)-customer_idbranch_name=”London”(branchloanborrower)2、查询在Brooklyn城市的每个支行都有存款帐户的客户编号customer_id,branch_name(accountdepositor)÷branch_namebranch_city=”Brooklyn”(branch)3、查询Brooklyn城市各支行的存款帐户额最大值。branch_namegmax(balance)(branch_city=”Brooklyn”(branchaccount))24、将存款帐号为A001的所有相关存款信息从数据库中删除accountaccount–account_nnumber=“A001”(account)depositordepositor–account_nnumber=“A001”(depositor)5、给Perryridge支行所有贷款客户提供额度为200的存款账户。该存款账户的账号为相应贷款客户的贷款帐号。r1(branch_name=“Perryridge”(borrowerloan))accountaccountloan_number,branch_name,200(r1)depositordepositorcustomer_id,loan_number(r1)6、删除Perridge支行的所有存款记录。accountaccount–branch_name=“Perryridge”(account)四、[24分]关系表结构与上题相同,试用SQL语句表达(其中查询语句只能用一条语句实现,全部正确每小题3分。表达与标准答案不一致,但是正确仍给3分):1、查询存款账号数量多于1000(不包含1000),并且名称以’CH’结尾的支行名称Selectbranch_name,count(account_number)FromaccountWherebranch_namelike‘%CH’Groupbybranch_nameHavingcount(account_number)10002、编号为001的客户在Brooklyn城市多个支行有贷款账户,查询在所有这些支行中也均有贷款帐户的客户编号SelectA.customer_idFromcustomerAWherenotexists(selectbranch_nameFromloan,borrowerWhereborrower.loan_number=loan.loan_numberAndcustomer_id=’001’andbranch_name=’Brooklyn’)Except(selectbranch_nameFromloan,borrowerBWhereB.loan_number=loan.loan_numberAndB.customer_id=A.customer_id)3、在数据库中加入如下信息:编号为A-973的客户在Perryridge支行建立贷款帐户,帐户编号为0019,贷款额为1200Insertintoloan(loan_number,branch_name,amount)values(‘0019’,‘Perryridge’,1200)Insertintoborrower(loan_number,customer_id)values(‘0019’,‘A-973’)4、把Perridge支行所有存款账户额提高10%3UpdateaccountSetbalance=balance*1.1Wherebranch_name=’Perridge’5、删除branch表中的branch_city属性Altertablebranchdropbranch_city6、查询比Brooklyn城市所有支行的资产都多的支行名称。selectbranch_namefrombranchwhereassetsall(selectassetsfrombranchwherebranch_city='Brooklyn')7、用DDL语言实现branch表,属性类型自定义。Createtablebranch(branch_namechar(20)primarykey,Branch_citychar(20)Assetsinteger)8、将在branch表的select、update、delete权利授予给JamesGrantselect,update,deleteonbranchtoJames五、[16分,每小题8分]1、1、不满足冲突可串行化3分,分析原因4分2、满足视图可串行化3分,给出串行化次序4分T1T2T4T3T5T1T4T2T3T5判断错误但分析原因,根据情况最高3分六、[18分,每小题6分]论述说明题:1、举例说明事务的ACID特征。原子性、一致性、隔离性、可持久性每方面介绍1.5分2、在数据库E-R图设计过程中,如何区别使用实体集和属性、实体集和联系集、强实体集和弱实体集?请举例说明每个方面2分,要求举例适当、详尽。如果不举例,仅概念性介绍最多给3分。
本文标题:数据库系统试题2011A卷定稿答案
链接地址:https://www.777doc.com/doc-2333184 .html