属性闭包与候选键习题[数据库原理] 第一部分函数依赖与属性闭包1. 基本属性闭包计算已知关系模式 R(A, B, C, D, E) 和函数依赖集 F { A→BC, CD→E, B→D, E→A }。设 X {A, B}求 X 关于 F 的属性闭包 X⁺。2. 判断候选键已知关系模式 R(S, T, U, V, W) 和函数依赖集 F { S→TU, U→V, VW→S }。a) 计算 {S} 的属性闭包。b) 计算 {V, W} 的属性闭包。c) 基于以上判断 {S} 和 {V, W} 是否为 R 的候选键。3. 闭包与逻辑推导已知关系模式 R(A, B, C) 和函数依赖集 F { A→B, B→C }。不计算完整闭包仅利用 Armstrong 公理自反、增广、传递证明函数依赖 A→C 成立。第二部分键超键、候选键、主键、外键4. 键的概念辨析给定一个“学生选课”场景主要关系有学生表 (Student):(学号, 姓名, 院系)课程表 (Course):(课程号, 课程名, 学分)选课表 (SC):(学号, 课程号, 成绩)请指出a) 学生表可能的一个超键、候选键和通常被选作的主键。b) 选课表的一个候选键。c) 选课表中的外键及其引用的主键。5. 键与函数依赖关系模式 R(P, Q, R, S, T) 上存在函数依赖{ PQ→R, Q→S, S→T }。a) 找出 R 的所有候选键。b) 该关系模式最高满足第几范式1NF, 2NF, 3NF, BCNF为什么第三部分综合应用题6. 规范化与闭包考虑一个记录项目信息的关系ProjInfo(项目ID, 项目名称, 负责人ID, 负责人姓名, 负责人部门)。已知语义一个项目有唯一ID和名称。一个项目由一位负责人负责。一位负责人有唯一的ID、姓名和所属部门。a) 写出此关系上成立的函数依赖集 F。b) 找出该关系的候选键。c) 它是否存在数据冗余和更新异常为什么d) 请将其分解为符合 3NF 或 BCNF 的关系模式。7. 闭包的应用等价判断有两个函数依赖集 F 和 GF { A→C, AC→D, E→AD, E→H }G { A→CD, E→AH }判断 F 和 G 是否等价即 F⁺ G⁺。请阐述你的判断思路或关键步骤。第四部分键值对数据库NoSQL8. 概念理解与传统的关系型数据库相比典型的键值对数据库如 Redis在数据模型和适用场景上有何主要特点请至少列出三点。9. 设计题假设你要用一个键值对存储来模拟一个简单的“用户会话”系统需要保存session_id、user_id、login_time和last_activity信息。a) 你会如何设计 Key 和 Value为什么b) 如果需要快速查询某个user_id的所有活跃会话这种设计可能有什么问题你有什么改进思路练习建议属性闭包计算是基础务必掌握手算步骤。候选键求解通常先找只出现在依赖左部或未出现在任何依赖中的属性再计算闭包。规范化理论中闭包是判断范式级别的核心工具。对于NoSQL键值对部分理解其设计哲学和权衡是关键。答案在主页。