2025年基础数据库试题及答案_第1页
2025年基础数据库试题及答案_第2页
2025年基础数据库试题及答案_第3页
2025年基础数据库试题及答案_第4页
2025年基础数据库试题及答案_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

2025年基础数据库试题及答案一、单项选择题(每题2分,共20分)1.以下关于数据库系统(DBS)、数据库(DB)、数据库管理系统(DBMS)的关系描述中,正确的是()。A.DBS包含DB和DBMS,DBMS是DBS的核心B.DB包含DBS和DBMS,DBS是DB的扩展C.DBMS包含DBS和DB,DB是DBMS的存储载体D.DBS与DBMS相互独立,DB是两者的公共数据区答案:A2.关系代数中,从关系R中选取满足条件σ的元组操作称为()。A.投影(π)B.选择(σ)C.连接(⋈)D.除(÷)答案:B3.事务的ACID特性中,“原子性”指的是()。A.事务一旦提交,其对数据库的修改是永久的B.事务执行过程中,数据库状态保持一致性C.事务的所有操作要么全部完成,要么全部不完成D.多个事务并发执行时,互不干扰答案:C4.以下索引类型中,适合范围查询的是()。A.哈希索引B.B+树索引C.位图索引D.全文索引答案:B5.关系模式R(A,B,C,D),函数依赖为A→B,B→C,C→D,则R的最高范式是()。A.1NFB.2NFC.3NFD.BCNF答案:B(解析:存在传递依赖A→C,A→D,不满足3NF)6.数据库并发控制中,“丢失修改”问题可通过()解决。A.读锁(S锁)B.写锁(X锁)C.时间戳排序D.多版本并发控制(MVCC)答案:B7.以下完整性约束中,用于保证数据逻辑合理性的是()。A.主键约束B.外键约束C.检查约束(CHECK)D.唯一约束答案:C8.执行SQL语句“SELECTCOUNT(DISTINCTscore)FROMstudent;”的作用是()。A.统计学生表中所有成绩的数量B.统计学生表中不同成绩值的数量C.统计学生表中成绩非空的记录数D.统计学生表中成绩的平均值答案:B9.数据仓库(DataWarehouse)的核心特点是()。A.支持实时事务处理B.面向主题的、集成的、稳定的、随时间变化的数据集合C.存储当前最新的业务数据D.支持OLTP(联机事务处理)答案:B10.NoSQL数据库中,MongoDB属于()类型。A.键值存储B.列族存储C.文档存储D.图存储答案:C二、填空题(每题2分,共20分)1.数据库系统的三级模式结构包括外模式、______和内模式。答案:模式(概念模式)2.关系模型的三要素是数据结构、______和完整性约束。答案:数据操作(或关系操作)3.事务的ACID特性中,“隔离性”通过______机制实现。答案:并发控制(或锁机制/MVCC)4.B+树索引中,所有数据记录存储在______节点。答案:叶子5.关系模式满足2NF的条件是消除了______函数依赖。答案:非主属性对候选键的部分6.数据库恢复技术中,______日志用于记录事务对数据库的所有更新操作。答案:重做(REDO)7.SQL语言的组成包括数据定义语言(DDL)、数据操纵语言(DML)和______。答案:数据控制语言(DCL)8.数据仓库的ETL过程指的是抽取(Extract)、______和加载(Load)。答案:转换(Transform)9.ER图中,实体之间的联系类型包括一对一(1:1)、一对多(1:n)和______。答案:多对多(m:n)10.NoSQL数据库的设计原则通常包括CAP定理中的______(一致性、可用性、分区容忍性)无法同时满足。答案:三者三、简答题(每题6分,共60分)1.简述关系模型与层次模型的主要区别。答案:关系模型用二维表(关系)表示数据及联系,数据结构统一,用户通过关系代数或SQL操作数据,支持复杂查询;层次模型用树形结构表示数据,节点间为父子关系,只能通过父节点访问子节点,数据联系隐含在结构中,查询路径固定,灵活性较低。2.事务回滚(Rollback)通常由哪些情况触发?答案:事务执行过程中遇到错误(如违反完整性约束、死锁超时)、用户显式调用ROLLBACK语句、系统故障(如断电导致事务未完成)。回滚会撤销事务对数据库的所有修改,恢复到事务开始前的状态。3.说明B+树索引相比B树索引的优点。答案:B+树所有数据记录集中在叶子节点,且叶子节点通过指针连接,支持范围查询时无需回表,效率更高;非叶子节点仅存储索引键,可容纳更多索引项,减少磁盘I/O次数;B+树的高度更低,查询时间更稳定。4.第三范式(3NF)的要求是什么?请举一个不满足3NF的关系模式并说明如何分解。答案:3NF要求关系模式中不存在非主属性对候选键的传递函数依赖。例如,关系模式R(学生ID,姓名,学院,学院地址),存在传递依赖:学生ID→学院→学院地址。分解为R1(学生ID,姓名,学院)和R2(学院,学院地址),消除传递依赖。5.乐观锁与悲观锁的核心差异是什么?各自适用场景。答案:悲观锁假设冲突可能发生,通过加锁(如X锁)强制阻塞其他事务的修改,适用于写操作频繁的场景;乐观锁假设冲突较少,通过版本号或时间戳验证数据是否被修改,适用于读多写少的场景。6.触发器(Trigger)的作用是什么?举例说明其应用场景。答案:触发器是绑定到表的事件(INSERT/UPDATE/DELETE)的自动执行程序,用于实现业务规则、数据校验或审计。例如,在订单表(order)插入新记录时,触发器自动检查库存表(inventory)的剩余数量,若不足则回滚插入操作。7.数据仓库与传统数据库的主要区别有哪些?答案:传统数据库面向OLTP(联机事务处理),支持实时业务操作,数据是当前的、细节的、易变的;数据仓库面向OLAP(联机分析处理),支持决策分析,数据是集成的、历史的、稳定的,结构常为星型或雪花型。8.简述ER图转换为关系模式的步骤。答案:(1)实体转换为关系,属性为关系的字段,实体的主键作为关系的主键;(2)1:1联系可合并到任一实体的关系中,或单独作为关系;(3)1:n联系合并到n端实体的关系中,添加1端实体的主键作为外键;(4)m:n联系单独转换为关系,主键为两端实体主键的组合,外键分别指向两端实体。9.SQL注入的原理是什么?如何防范?答案:原理是攻击者通过在用户输入中插入恶意SQL代码,欺骗数据库执行非预期操作(如删除数据、获取敏感信息)。防范措施包括:使用预编译语句(PreparedStatement)绑定参数、对用户输入进行严格校验和转义、限制数据库用户权限、避免在前端暴露SQL错误信息。10.NoSQL中键值存储(Key-ValueStore)的特点及适用场景。答案:特点是数据以键值对形式存储,结构简单,读写性能极高,扩展性强;缺点是不支持复杂查询。适用场景包括缓存(如Redis)、会话存储、需要快速读写的简单数据场景(如用户配置信息)。四、应用题(共30分)某公司需设计员工管理数据库,包含以下需求:员工表(Employee):员工ID(唯一标识)、姓名、性别、入职日期、部门ID(关联部门表)。部门表(Department):部门ID(唯一标识)、部门名称、负责人ID(关联员工表,可空)。项目表(Project):项目ID(唯一标识)、项目名称、起始日期、结束日期、负责人ID(关联员工表)。员工参与项目表(Emp_Project):记录员工参与的项目,需包含员工ID、项目ID、参与角色(如“开发”“测试”)。要求:(1)根据需求设计各表的结构,标注主键、外键及必要约束(8分);(2)编写SQL语句,查询2023年1月1日以后入职,且所在部门负责人为“张三”的员工姓名、部门名称(8分);(3)编写SQL语句,统计每个项目的参与员工数量(需显示项目名称和人数,人数为0的项目也要显示)(8分);(4)编写SQL语句,为“研发部”(部门名称)的所有员工增加1000元月薪(假设员工表包含“月薪”字段)(6分)。答案:(1)表结构设计:```sqlCREATETABLEDepartment(dept_idINTPRIMARYKEY,dept_nameVARCHAR(50)UNIQUENOTNULL,manager_idINT,FOREIGNKEY(manager_id)REFERENCESEmployee(emp_id));CREATETABLEEmployee(emp_idINTPRIMARYKEY,emp_nameVARCHAR(50)NOTNULL,genderENUM('男','女')NOTNULL,hire_dateDATENOTNULL,dept_idINTNOTNULL,salaryDECIMAL(10,2),FOREIGNKEY(dept_id)REFERENCESDepartment(dept_id));CREATETABLEProject(proj_idINTPRIMARYKEY,proj_nameVARCHAR(100)NOTNULL,start_dateDATENOTNULL,end_dateDATE,leader_idINTNOTNULL,FOREIGNKEY(leader_id)REFERENCESEmployee(emp_id));CREATETABLEEmp_Project(emp_idINT,proj_idINT,roleVARCHAR(20)NOTNULL,PRIMARYKEY(emp_id,proj_id),FOREIGNKEY(emp_id)REFERENCESEmployee(emp_id),FOREIGNKEY(proj_id)REFERENCESProject(proj_id));```(2)查询2023年1月1日以后入职且部门负责人为“张三”的员工:```sqlSELECTe.emp_name,d.dept_nameFROMEmployeeeJOINDepartmentdONe.dept_id=d.dept_idJOINEmployeemONd.manager_id=m.emp_idWHEREe.hire_date>'2023-01-01'ANDm.emp_name='张三';```(3)统计每个项目的参与员工数量(包括无员工的项目):```sqlSELECTj_name,COUNT(ep.emp_id)ASemp_countFROMProjectpLEFTJOINEmp_ProjectepONj_id=j_idGROUPBYj_id,j_name;```(4)为“研发部”员工增加1000元月薪:```sqlUPDATEEmployeeeJOINDepartmentdONe.dept_id=d.dept_idSETe.salary=e.salary+1000WHEREd.dept_name='研发部';```五、综合题(共20分)某高校需设计学生选课管理数据库,需求如下:学生信息:学号(唯一)、姓名、性别、出生日期、所在学院。课程信息:课程号(唯一)、课程名、学分、所属学院。选课关系:学生可选多门课,每门课可被多个学生选,需记录选课时间(精确到天)和成绩(0-100分,可空)。约束:学生所在学院与课程所属学院需一致(即学生只能选本学院课程)。要求:(1)绘制ER图(用文字描述实体、属性及联系)(6分);(2)将ER图转换为关系模式,标注主键、外键及约束(8分);(3)提出一条优化数据库性能的建议,并说明理由(6分)。答案:(1)ER图描述:实体1:学生(Student),属性:学号(Sno,主键)、姓名(Sname)、性别(Ssex)、出生日期(Sbirth)、学院(Sdept)。实体2:课程(Cou

温馨提示

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

评论

0/150

提交评论