2010-2011数据库系统期末考试题_第1页
2010-2011数据库系统期末考试题_第2页
2010-2011数据库系统期末考试题_第3页
2010-2011数据库系统期末考试题_第4页
全文预览已结束

下载本文档

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

文档简介

填空1、在java程序中若要使用到数据库,首先要加载驱动程序,如果使用jdbc连接postgreSQL中的test数据库,可以使用=1\*GB3①语句加载驱动程序,驱动程序加载之后,下一步要做的工作是通过=2\*GB3②方法获得和数据库建立的连接,该方法需要的参数有=3\*GB3③、用户名(userld)和密码(passward)。2、一个关系模型式为Y(X1,X2,X3,X4),假定该关系模式中存在如下函数依赖:X1→X2,X1→X3,X3→X4,则该关系属于=4\*GB3④范式,因为它存在着=5\*GB3⑤。3、一个关系模式如果满足了=6\*GB3⑥范式,那么在函数依赖范畴内,它已实现了彻底的分离。4、在事务的ACID特性中,对于隔离性,数据库管理系统是通过=7\*GB3⑦协议保证的。5、一个学生可以同时借阅零本或多本图书,一本图书只能由一个学生借阅,但可以不被学生借阅,则学生实体和图书实体之间的联系为=8\*GB3⑧的联系,学生在联系参与性约束中的最小值为=9\*GB3⑨。6、关系模型的三类完整性约束分别为:实体完整性、参照完整性和用户定义完整性,其中除了=10\*GB3⑩之外,另外两个完整性约束应该是由关系系统自动支持的,因此这两个完整性约束也称为关系的两个不变性。二、简答题1、简述数据库、数据库管理系统与数据库系统的概念。2、数据库管理系统DBMS存储数据库于二级存储设备上,我们称之为静态数据库,而事务则在内存中执行,因此,数据库管理系统需要把数据从静态数据库取到内存供事务访问,同时,也需要把事务对内存中数据的更新写回静态数据库。为了在存取效率和出现崩溃时恢复的复杂程度之间做出取舍,数据库管理系统所采取的数据可更新(DatabaseUpdate)策略(事务对内存中数据修改后,数据库管理系统向数据库更新的策略)和事务提交时所采取的页面刷新(PagePropagation)策略(事务提交时,数据库管理系统把事务对数据的更新向数据库刷新的策略)可能不同。数据库更新策略的不同决定了恢复时是否需要Undo过程,事务提交时所采取的页面刷新策略不同决定了恢复时是否需要Redo过程。试简述数据库管理系统可能采取的不同数据库更新策略以及事务提交时不同的页面刷新策略,并说明每种策略是否需要Undo和Redo过程,尝试分析各种策略优缺点。3、简述数据库在中的死锁现象,并描述如何使用有向图方法检测死锁。三、关系表达式1、已知关系R和S如下:关系R关系SABCDabcdabefabdebcefedcdedefCDEcdeefd=1\*GB3①求RS=2\*GB3②R÷S设有关系模式Department、Teacher、Student、Course和SC如下:Department(dNo。Dname,officeRoom,tel)Student(sNo,sName,sex,age,dNo)Teacher(tNo,tname,sex,dNo)Course(cNo,cName,credit,tNo)SC(sNo,cNo,score)试用关系代数表达式完成下列操作。=1\*GB3①求选修了课程号(cNo)为“C1”,并且选修了课程号(cNo)为“C2”的学生姓名(sName)。=2\*GB3②求选修了课程名(cName)为“DB”,并且成绩(score)小于60分的所有学生姓名(sName)。=3\*GB3③求选修了“陆伟”教师所讲授的课程名为“DB”的所有“软件学院”学生姓名。试用SQL语句完成下列操作。=1\*GB3①查询选修了课程名(cName)为“程序设计”,并且成绩在90分以上的学生的姓名。=2\*GB3②查询至少选修了三门课程的学生姓名(sName)。=3\*GB3③查询选修人数大于100人的课程名称(cName)和具体选修人数。=4\*GB3④将“软件与微电子”学院的所有学生的“DatabaseSystems”课程成绩增加10分。四、分析设计题1、数据库设计:在一个教师信息管理系统中提供以下信息:系:系代号、系名、联系电话、联系地址;教师:教师号、姓名、性别、职称;课程:课程代号、课程名、课程简介;学科方向:学科代码、学科名称、研究内容;上述实体集中存在如下联系:每个系可能有多个联系电话号码;每个系拥有一个或多个学科方向,某一学科方向只能属于某一固定系;每个系拥有多名教师,至少拥有一名教师,一名教师只能属于某一固定系;教师属于某一学科方向,但允许教师暂时不属于任何学科方向,也允许某一学科方向暂时没有教师;一个教师可以讲授多门课程,一门课程可为多个教师讲授,教师只在某一固定学期讲授课程,学期用学期号表示,允许教师暂时不用讲授课程;每个学科方向只能有一名教师作为学科带头人,也可能暂时空缺;某些课程有可能有先修课程,但最多只能有一门先修课程,一门课程可能为多门课程的先修课程。试完成如下设计:构造满足需求的E/R图模型,并对模型图进行必要文档描述,必要时可以对需求做合理补充说明,但在文档中应该描述清楚。将第一步得到的E/R模型逐步转换为等价的关系模式,要求写出转换步骤和说明。2、事务设计:SupposeWilliamandJulieshareasavingsandacheckingaccountatabank.Thebankhasmanyautomatictellermachines.WilliambanksfromoneATMwhileJuliebanksatantherATM.Williamwishesfirsttodepositfourhundreddollarsintothesavingsaccountandthentotransferthreehundreddollarsfromthecheckingaccounttothesavingaccount.Juliewishesfirsttosepositacheckforfivehundreddollarsintothecheckingaccountandthenwithdrawonehundreddollarsfromthesavingsaccount.Supposetheaccountactivitiesoccurasaninterleavedexecutionoftransactionsupdatingthedatabase.Also,youshouldassumethatthesescenariosarerunonPostgreSQLmeaningthatyoumayuseonlythoseisolationlevelssupportedbyPostgreSQL.ScenarioWilliamJulie·begintransaction(readcommittedisolationlevel)·begintransaction(readcommittedisolationlevel)ATMpromptsuserforoperation.ATMpromptsuserforoperation.WilliamChoosesDepositintoSavings.JulieChoosesDepositintoChecking.ATMpromptsuserforamount.ATMpromptsuserforamount.Williamenters400.Julieenters500.·Selectbalanceofsavings·SelectbalanceofcheckingSavingsbalance=savingsbalance+$400Savingsbalance=savingsbalance+$500·Updatesavingsbalanceindatabase.·Updatecheckingbalanceindatabase.ATMdisplaysconfirmationofdeposit.ATMdisplaysconfirmationofdeposit.ATMpromptsuserforoperation.ATMpromptsuserforoperation.WilliamChoosestransferfromcheckingtosavings.JulieChooseswithdrawalfromsavings.ATMpromptsuserforamount.ATMpromptsuserforamount.Williamenters300.Julieenters100.·Selectthecheckingbalance.·Selectthesavingscheckingbalanceindatabase.Savingsbalance=savingsbalance-$300Savingsbalance=savingsbalance-$100·Selectthesavingsbalance.·Updatesavingsbalanceindatabase.Savingsbalance=savingsbalance+$300ATMdisplaysconfirmationofwithdrawal.·Updatesavingsbalanceindatabase.ATMpromptsuserforoperation.·Updatecheckingbalanceindatabase.JulieChoosesnomoreoperations.ATMdisplaysconfirmationoftransfer.·EndtransactionATMpromptsuserforoperation.WilliamChoosesnomoreoperations.·EndtransactionYouwillnowanalyzethefollowingscenarioinvolvingtheseaccountactivitiesandidentifywhatproblemsexistinthescenarioaswellashowtofixthem.找出以上并发事务设计存在的问题,并进行分析和说明每个问题存在的原因:给出正确的事物设计,包括事务边界和隔离等级。3、设有关系模型R(A,B,C,D),其上的函数依赖集:F={A→C,C→A,B→AC,D→AC}求F的最小函数依赖集Fm;求R的候选关键字;将R逐步分解使其满足BCNF。4、查询分析和优化假设你受雇于一家医院,承担数据库管理员工作,你的一位同事在postgreSQL数据库中创建了一张表patient,用于存储病人信息,现要求你帮助获取所以女病人的信息,你通过查询语句select*frompatientwheregender=’f’来获取,结果发现查询性能非常糟糕,而现实patient表的那位工作人员不在现场,你必须对这个问题加以解决,你首先查看patient表的结构信息,结果如下:hospital=#\dpatientTable"patient"Column|Type|Modifiers++id|integer|notnullfirstname|text|notnulllastname|text|notnulltitle|text|admissiondate|date|address|text|gender|char|default'f'Indexes:patient_gender,patient_id,patient_firstname,p

温馨提示

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

评论

0/150

提交评论