2026年(完整版)数据库原理课后题附答案_第1页
2026年(完整版)数据库原理课后题附答案_第2页
2026年(完整版)数据库原理课后题附答案_第3页
2026年(完整版)数据库原理课后题附答案_第4页
2026年(完整版)数据库原理课后题附答案_第5页
已阅读5页,还剩14页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

2026年(完整版)数据库原理课后题附答案一、选择题(每题2分,共20分)1.下列关于数据模型的描述中,错误的是()。A.概念模型用于数据库设计的需求分析阶段,与具体DBMS无关B.关系模型中,实体及实体间的联系均用二维表表示C.层次模型的结构是有向树,支持多对多联系的直接表示D.面向对象模型可以支持复杂数据类型和继承性答案:C(层次模型仅支持一对多联系,多对多联系需通过冗余节点或虚拟节点间接表示)2.设有关系R(A,B,C)和S(B,D,E),若执行R⋈S(自然连接),则结果关系的属性个数为()。A.3+3=6B.3+3-1=5C.3+3-2=4D.无法确定答案:B(自然连接会消除重复的公共属性B,故属性为A,B,C,D,E共5个)3.下列SQL语句中,用于修改表结构的是()。A.ALTERTABLEStudentADDEmailVARCHAR(50);B.UPDATEStudentSETAge=Age+1;C.CREATETABLECourse(CnoCHAR(4)PRIMARYKEY);D.DELETEFROMStudentWHEREGrade=2023;答案:A(ALTERTABLE用于修改表结构,ADD为添加列)4.事务的原子性是指()。A.事务一旦提交,其对数据库的修改是永久的B.事务执行过程中,所有操作要么全部完成,要么全部不完成C.一个事务的执行不能被其他事务干扰D.事务处理的数据必须满足数据库的完整性约束答案:B(原子性强调事务的不可分割性,要么全做,要么全不做)5.关于索引的描述,正确的是()。A.聚集索引会改变表中数据的存储顺序,一个表只能有一个聚集索引B.非聚集索引不改变数据存储顺序,一个表只能有一个非聚集索引C.唯一索引可以保证索引列的值唯一,但允许NULL值D.全文索引适用于数值型列的快速查找答案:A(聚集索引决定数据物理存储顺序,一个表仅一个;非聚集索引可多个;唯一索引不允许重复值,包括NULL;全文索引用于文本内容)6.关系模式R(A,B,C,D),函数依赖F={AB→C,C→D,D→A},则R的候选码是()。A.ABB.BCC.CDD.BD答案:B(BC的闭包:BC→C→D→A,故BC→ABCD,是候选码)7.数据库并发控制中,“丢失修改”问题发生在()。A.未提交读(ReadUncommitted)隔离级别B.提交读(ReadCommitted)隔离级别C.可重复读(RepeatableRead)隔离级别D.可串行化(Serializable)隔离级别答案:A(未提交读允许事务读取其他事务未提交的修改,可能导致前一个事务的修改被后一个覆盖,即丢失修改)8.数据库恢复技术中,“检查点(Checkpoint)”的主要作用是()。A.记录事务开始和结束的时间点B.减少恢复时需要扫描的日志量C.确保日志文件的完整性D.防止数据被非法修改答案:B(检查点记录当前所有活动事务和数据库状态,恢复时只需处理检查点后的日志,提高效率)9.下列关于ER模型向关系模型转换的规则,错误的是()。A.实体型转换为一个关系模式,属性为实体的属性,主码为实体的主码B.1:1联系可转换为独立关系模式,或与任意一端实体合并C.1:n联系必须转换为独立关系模式,不能与n端实体合并D.m:n联系必须转换为独立关系模式,主码为两端实体主码的组合答案:C(1:n联系可转换为独立关系模式,或与n端实体合并,将1端主码作为外码加入n端关系)10.关于NoSQL数据库的描述,正确的是()。A.严格遵循ACID特性,适用于事务要求高的场景B.采用关系模型,支持复杂的SQL查询C.强调BASE特性(基本可用、软状态、最终一致),适合海量数据存储D.所有NoSQL数据库都不支持索引答案:C(NoSQL弱化ACID,强调BASE,适用于高并发、数据规模大的场景)二、填空题(每空1分,共15分)1.数据库系统的三级模式结构包括外模式、______和内模式。答案:模式(或概念模式)2.关系代数中,选择操作的条件是______上的逻辑表达式,投影操作的结果是______的子集。答案:元组;属性列3.SQL中,用于查询表中唯一值的关键字是______,用于分组统计的子句是______。答案:DISTINCT;GROUPBY4.事务的状态包括活动状态、______、失败状态和______。答案:部分提交状态;提交状态5.B+树索引的叶子节点存储______,非叶子节点存储______。答案:数据记录的指针(或键值+指针);索引键值6.关系模式规范化的目的是消除数据冗余和______,常用的范式级别包括1NF、2NF、3NF、______等。答案:操作异常(插入/删除/更新异常);BCNF7.数据库并发控制的主要技术是______,其中X锁(排他锁)的作用是______。答案:封锁;防止其他事务修改或读取数据(或保证写操作的独占性)8.数据库恢复的关键是建立______和______。答案:冗余数据;日志文件9.ER图中,实体用______表示,联系用______表示,属性用椭圆表示。答案:矩形;菱形10.列式数据库将数据按______存储,适合______(填“OLAP”或“OLTP”)场景。答案:列;OLAP三、简答题(每题5分,共25分)1.简述数据独立性的两层含义及其实现方式。答案:数据独立性包括逻辑独立性和物理独立性。逻辑独立性指用户的应用程序与数据库的逻辑结构相互独立,当模式改变时,通过修改外模式/模式映象,使外模式保持不变,应用程序无需修改。物理独立性指用户的应用程序与数据的物理存储相互独立,当内模式改变时,通过修改模式/内模式映象,使模式保持不变,应用程序无需修改。2.关系模型的完整性规则包括哪些?分别说明其含义。答案:包括实体完整性、参照完整性和用户定义的完整性。实体完整性要求主码的属性值不能为空,保证实体的唯一性;参照完整性要求外码要么是被参照关系中主码的有效值,要么为空(允许时),保证表间数据的一致性;用户定义的完整性是针对具体应用的数据约束,如字段的取值范围、非空等。3.视图的作用有哪些?答案:①简化用户操作,用户只需关注所需数据;②提高数据安全性,通过视图限制用户访问范围;③逻辑数据独立性,当基表结构变化时,只需修改视图定义,用户应用程序无需改变;④提供数据的逻辑重组,将分散在多个表中的数据整合为用户易理解的形式。4.事务的隔离级别有哪些?简述其区别。答案:隔离级别从低到高为:未提交读(ReadUncommitted)、提交读(ReadCommitted)、可重复读(RepeatableRead)、可串行化(Serializable)。未提交读允许读取未提交的脏数据;提交读只读取已提交的数据(解决脏读);可重复读保证同一事务内多次读取结果一致(解决不可重复读);可串行化确保事务执行结果与某种串行执行结果一致(解决幻读)。5.B+树索引与哈希索引的优缺点比较。答案:B+树索引:优点是支持范围查询、顺序访问,适合动态数据插入;缺点是插入/删除操作可能引发树结构调整,效率略低。哈希索引:优点是等值查询速度极快(O(1));缺点是不支持范围查询,哈希冲突会影响性能,不适合频繁更新的场景。四、设计题(每题10分,共20分)1.某高校学生选课系统需求如下:学生实体:学号(唯一)、姓名、性别、年龄课程实体:课程号(唯一)、课程名、学分选课联系:学生可选多门课,一门课可被多个学生选,需记录成绩要求:①画出ER图(标注实体属性、联系类型);②将ER图转换为关系模式,指出主码和外码。答案:①ER图:学生(矩形)属性:学号,姓名,性别,年龄;课程(矩形)属性:课程号,课程名,学分;联系“选课”(菱形),m:n联系,属性:成绩。学生与选课用m联系连接,课程与选课用n联系连接。②关系模式:学生(学号,姓名,性别,年龄)主码:学号课程(课程号,课程名,学分)主码:课程号选课(学号,课程号,成绩)主码:(学号,课程号),外码:学号(参照学生),课程号(参照课程)2.已知关系模式R(A,B,C,D,E),函数依赖F={AB→C,C→D,D→E,E→A}。①判断R属于第几范式,说明理由;②将R分解为BCNF,要求保持函数依赖。答案:①R的候选码是AB(AB的闭包:AB→C→D→E→A,故AB→ABCDE)。非主属性为D、E(A、B是主属性)。存在C→D(C非候选码),D→E(D非候选码),E→A(E非候选码),即非主属性D、E对候选码AB存在传递依赖(AB→C→D→E),因此R属于1NF(存在非主属性对码的传递依赖,不满足2NF)。②分解步骤:选择违反BCNF的函数依赖C→D(C不包含候选码),分解为R1(C,D)和R2(A,B,C,E)。R1的函数依赖C→D,C是主码,满足BCNF。R2的函数依赖:原F中AB→C(AB是候选码吗?R2的属性是A,B,C,E,候选码需计算:AB的闭包:AB→C,C→D(但D不在R2中),E→A,故AB→C→(无其他属性),E→A→AB?E的闭包:E→A→AB→C,故E→ABCE,所以R2的候选码是E和AB?需检查函数依赖是否保持。R2中存在E→A(E不包含候选码AB),违反BCNF,继续分解为R21(E,A)和R22(B,C,E)。R21的函数依赖E→A,E是主码,满足BCNF。R22的属性B,C,E,函数依赖AB→C(但A不在R22中,原函数依赖AB→C在R22中变为B→C?不,AB→C的前提是AB存在,若分解后R22无A,则原函数依赖可能丢失。因此需调整分解顺序。正确分解:初始候选码AB,存在C→D(C不包含码),分解为R1(C,D)和R2(A,B,C,E)。R2中函数依赖:AB→C(AB是候选码吗?计算R2的候选码:AB的闭包在R2中是AB→C,E→A→AB→C,所以AB和E都是候选码。存在E→A(E是候选码吗?E的闭包是E→A→AB→C,所以E→ABCE,故E是候选码。因此E→A中,决定因素E是候选码,满足BCNF;AB→C中,AB是候选码,满足BCNF。因此R2满足BCNF。最终分解为R1(C,D)、R2(A,B,C,E),其中R2包含函数依赖AB→C、E→A,保持函数依赖。五、综合题(20分)设计一个小型图书管理系统的数据库,要求:1.分析主要实体及联系(至少包括读者、图书、借阅三个实体/联系);2.设计ER图(标注属性、联系类型);3.转换为关系模式,指出主码、外码及必要的完整性约束;4.编写SQL语句:①创建“图书”表(书号、书名、作者、出版社、库存数量,书号唯一);②查询2023年1月1日后借阅且未归还的图书(假设“借阅”表含读者ID、书号、借阅日期、归还日期);③创建视图“逾期未还图书”(读者姓名、书号、书名、逾期天数)。答案:1.主要实体及联系:读者:读者ID(唯一)、姓名、类型(学生/教师)、联系方式图书:书号(唯一)、书名、作者、出版社、库存数量、ISBN借阅:读者与图书之间的m:n联系,属性:借阅日期、归还日期(允许空,表示未还)、应还日期(根据读者类型计算,如学生30天,教师60天)2.ER图:读者(矩形,属性:读者ID,姓名,类型,联系方式);图书(矩形,属性:书号,书名,作者,出版社,库存数量,ISBN);联系“借阅”(菱形,m:n联系,属性:借阅日期,归还日期,应还日期)。读者与借阅用m联系连接,图书与借阅用n联系连接。3.关系模式:读者(读者ID,姓名,类型,联系方式)主码:读者ID;类型约束:CHECK(类型IN('学生','教师'))图书(书号,书名,作者,出版社,库存数量,ISBN)主码:书号;库存数量约束:CHECK(库存数量≥0)借阅(读者ID,书号,借阅日期,归还日期,应还日期)主码:(读者ID,书号,借阅日期);外码:读者ID参照读者(读者ID),书号参照图书(书号);归还日期约束:归还日期≥借阅日期;应还日期计算规则:若读者类型为学生,应还日期=借阅日期+30天;教师则+60天(可通过触发器或应用层实现)4.SQL语句:①CREATETABLE图书(书号CHAR(13)PRIMARYKEY,书名VARCHAR(100)NOTNULL,作者VARCHAR(50)NOTNULL,出版社VARCHAR(80)NOTNULL,库存数量INTNOTNULLCHECK(库存数量>=0),ISBNCHAR(17)UNIQUE);②SELECT借阅.书号,

温馨提示

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

评论

0/150

提交评论