中级数据库系统工程师2004下半年下午试题、答案及详细解析_第1页
中级数据库系统工程师2004下半年下午试题、答案及详细解析_第2页
中级数据库系统工程师2004下半年下午试题、答案及详细解析_第3页
中级数据库系统工程师2004下半年下午试题、答案及详细解析_第4页
中级数据库系统工程师2004下半年下午试题、答案及详细解析_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

第第 10 章章 数据库系统工程师级下午试题分析数据库系统工程师级下午试题分析 试题 1 分析 参见软件设计师下午试题一分析 试题 2 阅读下列说明 回答问题 1 至问题 5 说明 某工厂的信息管理数据库的部分关系模式如下所示 职工 职工号 姓名 年龄 月工资 部门号 电话 办公室 部门 部门号 部门名 负责人代码 任职时间 关系模式的主要属性 含义及约束如表 2 1 所示 职工 和 部门 的关系示例分别如表 2 2 和表 2 3 所示 表 2 1 主要属性 含义及约束 属 性含义和约束条件 职工号惟一标记每个职工的编号 每个职工属于并且仅属于一个部门 部门号惟一标识每个部门的编号 每个部门有一个负责人 且他也是一个职工 月工资 500 元 月工资 45000 元 表 2 2 职工 关系 职工号姓名年龄月工资部门号电话办公室 1001 郑俊华 26100018001234 主楼 201 1002 王 平 27110018001234 主楼 201 2001 王晓华 38130028001235 1 号楼 302 2002 李 力 2480028001236 1 号楼 303 3001 黎远军 42130038001237 主楼 202 4001 李 源 2480048001245 2 号楼 102 4002 李兴民 36120048001246 2 号楼 103 5001 赵 欣 250Null 表 2 3 部门 关系 部 门 号部 门 名负责人代码任职时间 1 人事处 10022004 8 3 2 机关 20012004 8 3 3 销售科 4 生产科 40022003 6 1 5 车间 问题 1 根据上述说明 由 SQL 定义的 职工 和 部门 的关系模式 以及统计各部门的人数 C 工 资总数 Totals 平均工资 Averages 的 D S 视图如下所示 请在空缺处填入正确的内容 Create Table 部门 部门号 CHAR 1 a 部门名 CHAR 16 负责人代码 CHAR 4 任职时间 DATE b 职工号 Create Table 职工 职工号 CHAR 4 姓名 CHAR 8 年龄 NUMBER 3 月工资 NUMBER 4 部门号 CHAR 1 电话 CHAR 8 办公室 CHAR 8 a 职工号 c 部门号 CHECK d Create View D S D C Totals Averages As Select 部门号 e from 职工 f 问题 2 对于表 2 2 表 2 3 所示的 职工 和 部门 关系 请指出下列各行是否可以插入 为什么 问题 3 在问题 1 定义的视图 D S 上 下面哪个查询或更新是允许执行的 为什么 1 Update D S set D 3 where D 4 2 Delete from D Swhere C 4 3 Select D Averages from D S where C Select C from D S where D dept 4 Select D C From D S where Totals 10000 5 Select from D S 问题 4 查询每个部门中月工资最高的 职工号 的 SQL 查询语句如下 Select 职工号 from 职工 E where 月工资 Select Max 月工资 from 职工 as M where M 部门号 E 部门号 1 请用 30 字以内文字简要说明该查询语句对查询效率的影响 2 对该查询语句进行修改 使它既可以完成相同功能 又可以提高查询效率 问题 5 假定分别在 职工 关系中的 年龄 和 月工资 字段上创建了索引 如下的 Select 查询 语句可能不会促使查询优化器使用索引 从而降低查询效率 请写出既可以完成相同功能又可以提高查 询效率的 SQL 语句 Select 姓名 年龄 月工资 from 职工 where 年龄 45 or 月工资 1000 试题 2 分析 问题 1 分析 根据题意 职工 和 部门 的关系模式如下 用 SQL 定义关系模式的一个非常重要的问题是完整性控制 完整性控制应具有三方面的功能 定义 功能 检测功能 处理功能 一旦发现违背了完整性约束条件 采取相关的动作来保证数据的完整性 数 据库中最重要的约束是声明一个或一组属性形成关系的键 键的约束在 SQL 的 CREATETABLE 命令中 声明 在关系系统中 最重要的完整性约束条件是 实体完整性和参照完整性 1 实体完整性定义 在关系中只能有一个主键 声明主键有两种方法 将 PRIMARY KEY 保留字加在属性类型之后 在属性列表中引入一个新元素 该元素包含保留字 PRIMARYKEY 和用圆括号括起的形成该键的 属性或属性组列表 2 参照完整性 参照完整性定义格式如下 FOREIGN KEY 属性名 REFERENCES 表名 属性名 ONDELETE CASCADE SETNULL 参照完整性是通过使用如下保留字 FOREIGN KEY 定义那些列为外码 REFERENCES 指明外 键对应于哪个表的主键 ON DELETE CASCADE 指明删除被参照关系的元组时 同时删除参照关系中 的元组 SETNULL 表示置为空值方式 本试题中 部门关系的主键为部门号 职工关系的主键为职工号 其中 部门关系的主键为部门号可采用如下两种方式定义 部门号 CHAR 1 PRIMARY KEY 或者是 PRIMARY KEY 部门号 又因为负责人也是一个职工 所以负责人代码应该是一个外码 应进行参照完整性定义 根据分析 部门的 SQL 定义如下 Create Table 部门 部门号 CHAR 1 PRIMARY KEY 部门名 CHAR 16 负责人代码 CHAR 4 任职时间 DATE FOREIGN KEY 负责人代码 REFERENCES 职工 职工号 在职工关系中 部门号是一个外码 应进行参照完整性定义 又因为在试题表 2 1 中的条件 500 元 月工资 5000 元 所以在职工关系中应加上用户定义完整性 根据 分析职工的 SQL 定义如下 Create Table 职工 职工号 CHAR 4 姓名 CHAR 8 年龄 NUMBER 3 月工资 NUMBER 4 部门号 CHAR 1 电话 CHAR 8 办公室 CHAR 8 PRIMARY DEY 职工号 FOREIGNKEY 部门号 REFERENCES 部门 部门号 CHECK 月工资 BETWEEN 500 AND 5000 建立 D S 视图需要 COUNT 函数来统计各部门的人数 C SUM 来计算工资总数 Totals 用 AVG 来 计算平均工资 Averages 用分组语句 GROUPBY 来对不同部门进行分组 因此创建 D S 视图的 SQL 语 句是 Create ViewD S D C Totals Averages AS SELECT 部门号 COUNT SUM 月工资 AVG 月工资 FROM 职工 GROUP BY 部门号 问题 2 分析 本题主要考查完整性定义的约束性 以下表是待插入的记录组 1 由于在职工表的定义中职工号主码是惟一标识每个元组 记录 的 而 1 中的职工号是 1001 在 试题的职工关系中已经存在该职工号的记录 为了保证实体的完整性 该条记录不能插入 2 该元组可以插入 职工 关系 尽管部门号 电话和办公室为空 但是它表示该职工暂时没有分 配到某个部门 虽然职工表中部门号是外键 但在定义中也没有约束它不能为空 3 该元组不能插入 职工 关系 部门号是外键 而在部门关系中找不到部门号是 6 的元组 违反 了参照完整性 所以不能做插入操作 问题 3 分析 此问考查的是视图更新必须遵循的原则 因此 需要将 SQL 语句与定义该视图的 SQL 语句结合起 来考虑 由于 SQL 视图更新必须遵循以下规则 从多个基本表通过连接操作导出的视图不允许更新 对使用了分组 集函数操作的视图则不允许进行更新操作 如果视图是从单个基本表通过投影 选取操作导出的则允许进行更新操作 且语法同基本表 1 由于 D S 视图中包含分组操作 也即将 D S 视图合并到 Update D S set D 3 where D 4 结果为 Update 职工 set 部门号 3 where 部门号 4 GROUP BY 部门号 在 where 中包括 GROUP 分组操作 因此不能执行 2 同理 将 D S 视图合并到 Delete from D S where C 4 中 结果为 Delete from 职工 where COUNT 职工号 4 GROUP BY 部门号 因此不能执行 3 对于 Select D Averages from D S where C Select C from D S where D dept 要根据视图的 返回值的情况 因此不一定能执行 4 对于语句 Select D C From D S where Totals 10000 可以执行 5 对于语句 Select from D S 显然是能执行的 问题 4 分析 此问考查的是查询效率的问题 在涉及相关查询的某些情形中 构造临时关系可以提高查询效率 1 对于外层的职工关系 E 中的每一个元组 都要对内层的整个职工关系 M 进行检索 因此查询效率 不高 2 此问有两种解法 解答一 改正后的 SQL 语句使用了临时表 Select Max 月工资 as 最高工资 部门号 into Temp from 职工 Group by 部门号 Select 职工号 from 职工 Temp where 月工资 最高工资 and 职工 部门号 Temp 部门号 解答二 Select 职工号 from 职工 Select Max 月工资 as 最高工资 部门号 Group by 部门号 as depMax where 月工资 最高工资 and 职工 部门号 depMax 部门号 问题 5 分析 问题 5 中的 Select 查询语句中使用了条件 or 系统在查询的时候将对全表进行扫描 不会促使查询 优化器使用索引 从而降低了查询效率 改正的方法是去掉 or 修改后的 SQL 语句如下 Select 姓名 年龄 月工资 from 职工 where 年龄 45 union Select 姓名 年龄 月上资 from 职工 where 年龄 月工资 1000 参考答案 问题 1 解答 a PRIMARY KEY b FOREIGN KEY 负责人代码 REFERENCES 职工 c FOREIGN KEY 部门号 REFERENCES 部门 d 月工资 500 AND 月工资 5000 或月工资 BETWEEN 500 AND 5000 e count Sum 月工资 Avg 月工资 f GrOup by 部门号 问题 2 解答 1 该行不能插入 职工 关系 它违反了实体完整性中主码必须惟一区分关系中的每一个属性 2 该行可以插入 职工 关系 尽管部门号 电话和办公室为空 但是它表示该雇员没有分配到某 个部门 3 该行不能插入 职 32 关系 它违反了参照完整性 因为 6 在关系 部门 中不存在 问题 3 解答 此问考查的是对视图定义的掌握 1 和 2 都不能更新 因为使用分组合聚集函数定义的视图是不可更新的 3 不一定 视子查询的返 回值而定 4 和 5 允许查询 问题 4 解答 此问考查的是查询效率的问题 在涉及相关查询的某些情形中 构造临时关系可以提高查询效率 1 对于外层的职工关系 E 中的每一个元组 都要对内层的整个职工关系 M 进行检索 因此查询效率 不高 2 解答一 改正后的 SQL 语句使用了临时表 Select Max 月工资 as 最高工资 部门号 into Temp from 职工 Group by 部门号 Select 职工号 from 职工 Temp where 月工资 最高工资 and 职工 部门号 Temp 部门号 解答二 Select 职工号 from 职工 Select Max 月工资 as 最高工资 部门号 Group by 部门号 as depMax where 月工资 最高工资 and 职工 部门号 depMax 部门号 问题 5 解答 此问主要考查在查询中注意 where 子句中使用索引的问题 Select 姓名 年龄 月工资 from 职工 where 年龄 45 union Select 姓名 年龄 月工资 from 职工 where 年龄 月工资 1000 试题 3 阅读下列说明 回答问题 1 至问题 5 说明 某仓储超市采用 POS Point of Sale 收银机负责前台的销售收款 为及时掌握销售信息 并依此指导 进货 拟建立商品进 销 存数据库管理系统 该系统的需求分析已经基本完成 下面将进入概念模型 的设计 需求分析结果 1 销售业务由 POS 收银机来辅助实现 POS 机外接条码阅读器 结账时收银员将商品的条码通过 阅读器输入 POS 机中 所售商品数量默认值为 1 可以由收银员修改 POS 机根据输入的商品信息 打 印出如图 3 1 所示的购物清单 2 将经销的商品分为直销商品和库存商品两大类 直销商品的保质期较短 如食品类 由供应商直 接送达超市 管理员将过期的商品返还给供应商处理 库存商品由采购员向供应商提交订购单 供应商 根据订购单送货 超市会不定期对库存商品按照折扣率进行打折优惠 直销商品和库存商品的送货单样表分别如图 3 2 图 3 3 所示 其中直销商品生产批号的前 6 位表示 生产日期 3 超市的硬件拓扑结构如图 3 4 所示 4 业务处理过程 由 POS 机存储每一笔销售记录 在每个工作日结束前汇总当日各商品的销售量至 中心数据库 销售日汇总 根据当日的销售日汇总更新存货表 每笔进货记入进货表中 并及时更新存货 表 图 3 2 直销商品送货单样表 图 3 3 库存商品送货单样表 概念模型设计 根据需求阶段收集的信息 设计的实体联系图和关系模式 不完整 如下 1 实体联系图 2 关系模式 销售详单 销售流水号 商品编码 数量 金额 收银员 时间 销售日汇总 日期 商品编码 数量 存货表 商品编码 数量 进货表 送货号码 商品编码 数量 日期 商品 b 问题 1 对直销商品和库存商品进行概括 给出超类和子类 填入图 3 5 中 a 处所示的虚线框内 并补充 联系 问题 2 根据你的实体联系图 完成 b 处的商品关系模式 并增加子类型的实体关系模式 问题 3 对所有关系模式 以下划线指出各关系模式的主键 问题 4 如果将商品信息只存储在中心数据库中 与在各 POS 机上存储其备份相比 从前台销售效率和更 新商品库两方面论述各自的优缺点 不超过 300 字 问题 5 如果考虑引入积分卡 根据累积消费金额计算积分点 再根据积分点在顾客购物时进行现金返还 并修改顾客的累积消费金额和积分点 请给出新增加的积分卡关系模式 并对销售详单关系模式进行修 正 指出修正后关系模式和新增关系模式的候选键和外键 试题 3 分析 本题考查的是关于数据库设计中的概念结构设计与逻辑结构设计方面的知识 在概念设计阶段中 数据抽象是对实际的人 物 事和概念进行人为处理 抽取所关心的共同特性 有三种抽象 分类 聚集和概括 其中概括是定义类型之间的一种子集联系 其重要性质是继承性 也 就是说子类继承了超类上定义的所有抽象 概念设计是独立于任何一种数据模型的信息结构 而逻辑结构设计的任务是把概念结构设计阶段设 计好的基本 E R 图转换为与选用 DBMS 产品所支持的数据模型相符合的逻辑结构 E R 图向关系模型的转换要解决的问题是如何将实体和实体的联系转换为关系模式 如何确定这些关 系模式的属性和码 一般这种转换的原则是 一个实体型转换为一个关系模式 实体的属性就是关系的属性 实体的码就是关系的码 E R 图中的联系有三种 一对一联系 1 1 一对多联系 1 n 和多对多联系 m n 针对这三种不同的 联系 有不同的转换方法 1 1 联系的转换 一对多联系有两种方式向关系模式进行转换 一种方式是将联系转换成一个独 立的关系模式 关系模式的名称取联系的名称 关系模式的属性包括该联系所关联的两个实体的码及联 系的属性 关系的码取自任一方实体的码 另一种方式是将联系归并到关联的两个实体的任一方 给待 归并的一方实体属性集中增加另一方实体的码和该联系的属性即可 归并后的实体码保持不变 1 n 联系的转换 一对多联系有两种方式向关系模式进行转换 一种方式是将联系转换成一个独 立的关系模式 关系模式的名称取联系的名称 关系模式的属性取该联系所关联的两个实体的码及联系 的属性 关系的码是多方实体的码 另一种方式是将联系归并到关联的两个实体的多方 给待归并的多 方实体属性集中增加一方实体的码和该联系的属性即可 归并后的多方实体码保持不变 m n 联系的转换 多对多联系只能转换成一个独立的关系模式 关系模式的名称取联系的名称 关系模式的属性取该联系所关联的两个多方实体的码及联系的属性 关系的码是多方实体的码构成的属 性组 问题 1 分析 问题 1 考查应试者对概念模型的掌握 建立概念模型就是以图示化的方法 通常采用 E R 图 本题已 给出部分实体联系图 要求应试者对题目论述和给定的实体联系力的分析 要补充的内容是虚线框内的 实体和缺少的联系的描述 根据题干的描述 图中缺少商品实体 且应划分为直销商品和库存商品两个 子类 并画出销售日汇总 存货表和进货表与商品实体之间的联系 通过分析得到的 E R 如下 问题 2 分析 根据 问题 1 中填入的实体 和题干中给定的对直销商品和库存商品的描述 送货表 销售清单和打折 处理 分析各实体应具有的属性 从试题中可以看出商品包括了商品编码 商品名称及价格属性 所以得出商品关系模式如下 商品 商品编号 商品名称 供应商 单价 因为又由于直销商品有保质期长短等问题 所以根据题意有生产批号 消费期限属性 因此直销商 品的关系模式如下 直销商品 商品编号 生产批号 消费期限 由于库存商品会不定期按照折扣率进行打折优惠 可以看出库存商品还有价格折扣率这个字段 所 以库存商品的关系模式如下 库存商品 商品编号 折扣率 问题 3 分析 根据题目给定的关系模式和 问题 2 补充的关系模式 根据属性间的函数依赖关系和给定的关系实例 各种样表 来确定各关系模式的主键 销售详单的主键为 销售流水号 商品编码 销售日汇总的主键为 日期 商品编码 存货表主键为商品编码 进货表主键为 送货号码 商品编码 商品主键为商品编号 直销商品主键为 商品编号 生产批号 库存商品主键为商品编号 问题 4 分析 本题要求结合数据存储与实际应用 在设计中如何考虑可能出现的各种因素 采取合理的处理方式 可以考虑如下两种情况 采用商品信息集中存储在中心数据库中 则在销售前台的每笔计费中 都必须从中心数据库提 取商品名称和单价 增加网络的负载 在业务繁忙时直接影响到前台的销售效率 同时 如果发生网络 故障 则该 POS 机不能工作 采用这种方式 对商品库的更新 如引入新的商品和修改商品价格 会及 时体现在前台的销售业务中 采用商品信息存储在中心数据库中 各 POS 机存储商品表的备份 POS 机直接从本地读取商品 信息 减少了网络的负载 可以提高交易的效率 同时即使有短时间的网络故障 也不影响该 POS 机的 正常使用 只有当存在商品信息变更时才需要与中心数据库同步 采用这种方式 必须在每次商品信息 变更时同步各 POS 机的数据 问题 5 分析 本题是对现有关系模式的改进和面向新应用的扩充 对销售详单做如下的修改 增加积分卡号属性 销售详单 销售流水号 商品编码 数量 金额 收银员 时间 另外 需要增加积分卡关系 积分卡 累积消费金额 积分点 试题 3 解答 问题 1 解答 问题 2 解答 商品 商品编号 商品名称 供应商 单价 直销商品 商品编号 生产批号 消费期限 库存商品 商品编号 折扣率 问题 3 解答 销售详单 销售流水号 商品编码 数量 金额 收银员 时间 销售日汇总 日期 商品编码 数量 存货表 商品编码 数量 进货表 送货号码 商品编码 数量 日期 商品 商品编号 商品名称 供应商 单价 直销商品 商品编号 生产批号 消费期限 库存商品 直显组号 折扣率 问题 4 解答 1 采用商品信息集中存储在中心数据库中 则在销售前台的每笔计费中 都必须从中心数据库提取 商品名称和单价 增加网络的负载 在业务繁忙时直接影响到前台的销售效率 同时 如果发生网络故 障 则该 POS 机不能工作 采用这种方式 对商品库的更新 如引入新的商品和修改商品价格 会及时体现在前台的销售业务 中 2 采用商品信息存储在中心数据库中 各 POS 机存储商品表的备份 POS 机直接从本地读取商品 信息 减少了网络的负载 可以提高交易的效率 同时即使有短时间的网络故障 也不影响该 POS 机的 正常使用 只有当存在商品信息变更时才需要与中心数据库同步 采用这种方式 必须在每次商品信息变更时同步各 POS 机的数据 问题 5 解答 1 对销售详单关系模式做如下的修改 增加积分卡号属性 销售详单 销售流水号 商品编码 数量 金额 收银员 时间 2 加积分卡关系模式 积分卡 积分卡号 累积消费金额 积分点 关系模式中画实下划线表示主键 虚下划线表示外键 试题 4 阅读下列说明 回答问题 1 至问题 3 说明 M 公司为某旅游公司设计机票销售专用数据库 其关系模式如图 4 1 所示 关系模式的主要属性 含义及约束如表 4 1 所示 属性间的函数依赖关系如图 4 2 所示 属性间函 数依赖的标记方法如图 4 3 所示 属性含义和约束条件 旅程编号 惟一标识每个能按期出发的旅行团队的编号 相同旅程编号的旅客 在同一日程中搭乘相 同航班 旅客编号 惟一标识一个旅行团队中的每一位旅客的编号 团队编号 惟一标识每个旅行团队的编号 如 2004 8 4 云南双飞 身份证号 惟一识别身份的编号 旅客旅行前需要向旅行社提出申请 说明要参加的旅行团队 旅行社建立的旅行申请包括 旅行出 发日期和到达日期的机票预订 购票等信息 旅行社还需要为每个团队制定 旅程 和 搭乘航班 表 有关 旅程 和 搭乘航班 的示例如表 4 2 表 4 3 所示 旅客编号 A01 旅程编号 P1 搭乘日期出发地目的地出发时间到达时间航班名 2004 5 1 西安桂林 10 0013 00JJ100 2004 5 1 桂林昆明 17 0019 00CC400 2004 5 5 昆明西安 9 0012 30JJ600 表 4 3 搭乘航班 示例 旅程编号旅客编号搭乘日期航班名 P1A012004 5 1JJ100 P1A012004 5 1CC400 P1A012004 5 5JJ600 P1B022004 5 1JJ100 P1B022004 5 1CC400 P1B022004 5 5JJ600 P2C032004 5 1JJ200 P2C032004 5 5JJ700 问题 1 对关系 航班 请回答以下问题 1 列举出所有不属于任何候选键的属性 非键属性 2 关系 航班 可达到第几范式 用不超过 60 个字的内容叙述理由 问题 2 对关系 旅客 请回答以下的问题 1 针对 旅客 关系 用 100 字以内文字简要说明会产生什么问题 并加以修正 2 列出修正后的关系模式的所有候选键 3 把 旅客 分解为第三范式 并用图 4 1 所示的关系模式的形式表示 分解后的关系名依次取旅 客 1 旅客 2 问题 3 对关系 搭乘航班 请回答以下的问题 1 把非平凡的多值依赖属性 图 4 2 中没有表示 的例子用满足图 4 3 的方式表示出来 2 关系 搭乘航班 是 boyce codd 范式而不是第四范式 请用 200 字以内文字阐述理由 3 把 搭乘航班 关系分解成第四范式 并采用图 4 1 所示的关系模式的形式表示 分解后的关系 名依次取搭乘航班 1 搭乘航班 2 试题 4 分析 试题四是关于数据库设计理论方面的题目 关系数据库设计理论的核心是数据间的函数依赖 衡量 的标准是关系规范化的程度及分解的无须连接和保持函数依赖性 关系数据库设计的目标是生成一组合 适的 性能良好的关系模式 以减少系统中信息存储的冗余度 但又可方便地获取信息 数据库设计理 论包括函数依赖 范式和关系模式规范化三个方面的内容 其中函数依赖是该理论的核心 问题 1 分析 为了做好这种类型的试题 需要正确地理解如下基本概念 函数依赖函数依赖 设 R U 是属性集 U 上的关系模式 X Y 是 U 的子集 若对 R U 的任何一个可能的关系 r r 中不可能存在两个元组在 x 上的属性值相等 而在 Y 上的属性值不等 则称 X 函数决定 Y 或 Y 函数 依赖于 X 记作 X Y 非平凡的函数依赖非平凡的函数依赖 如果 X Y 但 YX 则称 X Y 是非平凡的函数依赖 一般情况下总是讨论 非平凡的函数依赖 平凡的函数依赖平凡的函数依赖 如果 X Y 但 YX 则称 X Y 是平凡的函数依赖 完全函数依赖完全函数依赖 在 R U 中 如果 X Y 并且对于 X 的任何一个真子集 X 都有 X 不能决定 Y 则 称 Y 对 X 完全函数依赖 记作 XY 部分函数依赖 部分函数依赖 如果 X Y 但 Y 不完全函数依赖于 X 则称 Y 对 X 部分函数依赖 记作 XY 部分函数依赖也称局部函数依赖 传递依赖传递依赖 在 R U F 中 如果 X Y YX YX Y Z 则称 Z 对 X 传递依赖 候选码 候选码 设 K 为 R U F 中的属性的组合 若 KU 且对于 K 的任何一个真子集 K 都有 K 不能 决定 U 则 K 为 R 的候选码 候选关键字 若有多个候选码 则选一个作为主码 主键 主属性和非主属性主属性和非主属性 包含在任何一个候选码中的属性叫做主属性 否则叫做非主属性 1NF 若关系模式 R 的每一个分量是不可再分的数据项 则关系模式 R 第一范式 1NF 2NF 若关系模式 R 1NF 且每一个非主属性完全依赖于码 则关系模式 R 2NF 换句话说 当 1NF 消除了非主属性对码的部分函数依赖 则称为 2NF 3NF 若关系模式 R U F 中若不存在这样的码 X 属性组 Y 及非主属性 Z ZY 使得 X Y YX Y Z 成立 则关系模式 R 3NF 即当 2NF 消除了非主属性对码的传递函数依赖 则称 为 3NF BCNF 若关系模式 R 1NF 若 X Y 且 YX 时 X 必含有码 则关系模式 R BCNF 即当 3NF 消除了主属性对码的部分和传递函数依赖 则称为 BCNF 4NF 关系模式 R 1NF 若对于 R 的每个非平凡多值依赖 X Y 且 YX 时 X 必含有码 则关 系模式 R U F 4NF 在问题 1 中 1 对关系 航班 的候选键为 航班名 飞行日期 所以非键属 性为 航空公司名称 出发地点 出发时间 目的地 到达时间 2 关系 航班 是属于 1NF 的 因为非主属性航空公司名称 出发地点 目的地不完全函数依赖于 候选键 航班名 飞行日期 该关系模式存在如下函数依赖 航班名 航空公司名称 出发地点 目的 地 航班名 飞行日期 出发时间 到达时间 问题 2 分析 问题 2 可以有两种解题思路 第一种解题方法 1 在题中给出的 旅客 关系中 不同的团队会有相同的旅客编号 所以 旅客编号不能作为候选 键 如果同一旅客不同时间参加不同的团队将导致 身份证号 无法确定关系中的每一个元组 所以 身份证号 也不能作为候选键 为此 需要增加一个 团队编号 的属性 又由于 身份证号 团队编 号 旅客编号 旅客编号 团队编号 身份证号 身份证号 姓名 联系方法 出生日期 性别 所以该关系模式存在部分函数依赖 导致旅客参加多少次团队 其姓名等信息将重复多少次 2 候选键 身份证号 团队编号 和 旅客编号 团队编号 3 旅客 分解为第三范式如下所示 第二种解题方法 1 在题中给出的 旅客 关系中 不同的团队会有相同的旅客编号 所以 旅客编号不能作为候选 键 如果同一旅客不同时间参加不同的团队将导致 身份证号 无法确定关系中的每一个元组 所以 身份证号 也不能作为候选键 为此 可以通过修改

温馨提示

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

评论

0/150

提交评论