《数据库题库答案.docx》由会员分享,可在线阅读,更多相关《数据库题库答案.docx(65页珍藏版)》请在优知文库上搜索。
1、第二套试卷1 .Listfoursignificantdifferencesbetweenafile-processingsystemandaDBMS.Answer:1)两种系统都包含数据收集和一套存取那些数据的程序,DBMS允许物理上的和逻辑上的数据存取,而文件处理系统只能进行物理上的存取。2 .DBMS能够通过授权所有程序访问一个物理数据块,来减少数据的冗余,而在文件处理系统中,一个程序所写的数据不能被另一个程序读取。3 )DBMS允许灵活的对数据进行访问,而文件处理系统则只允许预定的数据访问。4 )DBMS允许多个用户同时访问同一数据,而文件处理系统则只允许一个或多个程序同时访问不同的数
2、据,只有当两个程序对文件进行只读操作时,才允许并发地访问该文件。2. Whywouldyouchooseadatabasesysteminsteadofsimplystoringdatainoperatingsystemfiles?Whenwoulditmakesensenottouseadatabasesystem?l使用DBMS存储数据并通过WEB浏览器浏览数据。通过WEB可存取的表单界面来产生查询请示,并使用诸如HTML的标记语言将查询结果格式化,从而便于在浏览器中显示!20一个原因为DBMS是一个复杂的软件,并为如处理多个并发请求之类的工作载荷进行了优化,因此,它的性能可能对一些如具有
3、严格实时约束的应用程序或带有一些定义明确的关键操作并且为这些操作必须编写有效的客户代码的应用程序之类的不是很适合。另一个原因是某些应用程序可能需要以查询语言不能支持的开工来操纵数据。3. Whatislogicaldataindependenceandwhyisitimportant?逻辑数据独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,即,当数据的逻辑结构改变时,用户程序也可以不变。数据逻辑结构改变时,不一定要求修改程序,程序对数据使用的改变也不一定要求修改全局数据结构,使进一步实现深层次数据共享成为可能。4. Whichofthefollowingplaysanimportant
4、roleinrepresentinginformationabouttherealworldinadatabase?Explainbriefly.1) .Thedatadefinitionlanguage.2) .Thedatamanipulationlanguage.3) .Thebuffermanager.4) .Thedatamodel.Answer:1) .Thedatadefinitionlanguage.数据定义语言(DataDefinitionLanguage,DDL)是SQL语言集中负责数据结构定义与数据库对象定义的语言,由CREATE、ALTER与DRoP三个语法所组成最早是
5、由Codasyl(ConferenceonDataSystemsLanguages)数据模型开始,现在被纳入SQL指令中作为其中一个子集。目前大多数的DBMS都支持对数据库对象的DDL操作,部份数据库(如PostgreSQL)可把DDL放在交易指令中,也就是它可以被撤回(RoIIback)o较新版本的DBMS会参加DDL专用的触发程序,让数据库管理员可以追踪来自DDL的修改。2) .Thedatamanipulationlanguage.数据操纵语言DMLDataManipulationLanguage,用户通过它可以实现对数据库的根本操作。例如,对表中数据的插入、删除和修改。3) .Theb
6、uffermanager.4) .Thedatamodel.数据模型数据(data是描述事物的符号记录。模型Model)是现实世界的抽象。数据模型DataModel是数据特征的抽象,是数据库管理的教学形式框架。数据库系统中用以提供信息表示和操作手段的形式构架。数据模型包括数据库数据的结构局部、数据库数据的操作局部和数据库数据的约束条件。5) WhataretheresponsibilitiesofaDBA?1文件管理互动2完整性约束3平安性约束4备份和恢复5并发控制6) Acompanydatabaseneedstostoreinformationaboutemployees(identifi
7、edbyssn,withsalaryandphoneasattributes),departments(identifiedbydno,withdnameandbudgetasattributes),andchildrenofemployees(withnameandageasattributes).Employeesworkindepartments;eachdepartmentismanagedbyanemployee;achildmustbeidentifieduniquelybynamewhentheparent(whoisanemployee;assumethatonlyonepar
8、entworksforthecompany)isknown.Wearenotinterestedininformationaboutachildoncetheparentleavesthecompany.DrawanERdiagramthatcapturesthisinformation.7) ConsiderthescenariofromExercise6,whereyoudesignedanERdiagramforacompanydatabase.WriteSQLstatementstocreatethecorrespondingrelationsandcaptureasmanyofthe
9、constraintsaspossible.Ifyoucannotcapturesomeconstraints,explainwhy.AnswerThefollowingSQLstatementscreatethecorrespondingrelations.CREATETABLEEmployees(ssnCHAR(IO),salINTEGER,phoneCHAR(13),PRIMARYKEY(ssn)CREATETABLEDepartments(dnoINTEGER,budgetINTEGER,dnameCHAR(20),PRIMARYKEY(dno)CREATETABLEWorksin(s
10、snCHAR(IO),dnoINTEGER,PRIMARYKEY(ssn,dno),FOREIGNKEY(ssn)REFERENCESEmployees,FOREIGNKEY(dno)REFERENCESDepartments)CREATETABLEManages(ssnCHAR(IO)1dnoINTEGER,PRIMARYKEY(dno),FOREIGNKEY(ssn)REFERENCESEmployees,FOREIGNKEY(dno)REFERENCESDepartments)CREATETABLEDependents(ssnCHAR(IO)znameCHAR(IO),ageINTEGE
11、R,PRIMARYKEY(ssn,name),FOREIGNKEY(ssn)REFERENCESEmployees,ONDELETECASCADE)8) Considerthefollowingrelations:Student(snum:integer;sname:string,major:string,level:string,age:integer)Class(name:string,meetsat:string,room:string,1id:integer)Enrolled(snum:integer;cname:string)Faculty(fid:integer;fname:str
12、ing,deptid:integer)Themeaningoftheserelationsisstraightforward;forexample,Enrolledhasonerecordperstudent-classpairsuchthatthestudentisenrolledintheclass.WritethefollowingqueriesinSQLNoduplicatesshouldbeprintedinanyoftheanswers.1) .Findthenamesoffacultymembersforwhomthecombinedenrollmentofthecoursest
13、hattheyteachislessthanfive2) .Foreachlevel,printthelevelandtheaverageageofstudentsforthatlevel.3) .ForalllevelsexceptJR,printthelevelandtheaverageageofstudentsforthatlevel.4) .ForeachfacultymemberthathastaughtclassesonlyinroomR128,printthefacultymember*snameandthetotalnumberofclassessheorhehastaught
14、5) .Findthenamesofstudentsenrolledinthemaximumnumberofclasses6) .Findthenamesofstudentsnotenrolledinanyclass.Anwser:1. SELECTDISTINCTEfnameFROMFacultyFWHERE5(SELECTCOUNT(E.snum)FROMClassC,EnrolledEWHEREC.name=EameANDCfid=Efid)2. SELECTS.level,AVG(S.age)FROMStudentSGROUPBYSJeveI3. SELECTSJeveIzAVG(S.
15、age)FROMStudentSWHERES.level,JR,GROUPBYS.level4. SELECTEfname,COUNT(*)ASCourseCountFROMFacultyF,ClassCWHERERfid=CfidGROUPBYFzfid,EfnameHAVINGEVERY(C.room=R128)5. SELECTDISTINCTS.snameFROMStudentSWHERES.snumIN(SELECTE.snumGROUPBYE.snumHAVINGCOUNT(*)=ALL(SELECTCOUNT(*)FROMEnrolledE2GROUPBYE2.snum)6. SELECTDISTINCTS.snameFROMStudentSWHERES.snumNOTIN(SELECTE.snumFROMEnrolledE)第三套试卷1 .Explainthefollowingtermsbriefly:attribute,domain,entity,relationship,one-to-manyrelationship,many-to-manyrelationship.2 .属性是实体集中每个成员具有的描述性性质;3 .域在文件系统中,有时也称做字段,是指数据中不可再分的根本单元。一个域包含一个值。4 .实体是现实世