计算候选关键字

1、已知关系R(A,B,C,D,E)及其上的函数相关性集合,F={A→B,E→A,CE→D},该关系的候选关键字是?


涉及知识点

一、关系R:

1、在用户看来的定义

  • 关系R,即关系模式,就是对关系(表)的描述。
  • 关系名(属性1,属性2,属性3, …)
    • 关系名:表名
    • 属性: 表中的一列即为一个属性

2、形式化定义

  1. 关系定义2.3:
    这里写图片描述
  2. n目关系必有n目关系

二、候选关键字

  • 候选关键字:候选码,关系中的某一属性组的值能唯一地标识一个元组织。
  • 元组:表中的一行即为一组,属性所对应的行值。

三、函数相关性集合F

  • 函数相关性集合F,有时称为函数依赖集F
  • 对于给定的R,可以将它的属性划分为4类:
    • L类,仅出现在F的函数依赖左部的属性.
    • R类,仅出现在F的函数依赖右部的属性.
    • N类,在F的函数依赖左部和右部均未出现的属性.
    • LR类,在F的函数依赖左部和右部两部均出现的属性

求解候选码.

定理1:对于给定的关系模式R,若X(X∈U)是 L类 或 N类 属性组,则X必为R的任一候选码的成员.

推论1:对于给定的关系模式R,若X(X∈U)是 L类 属性组,且X+包含了R的全部属性,则X必为R的唯一候选码.

推论2:对于给定的关系模式R,若X是R的 N类 和 L类 组成的属性组,且X+包含了R的所有属性,则X是R的唯一候选码.

分析题目:

F={A→B,E→A,CE→D}
有依赖关系可知
E-> A -> B
CE->D
这里写图片描述

所以候选码为C、E、。


举一反三:

1、(2016Tecent.4)关系R(F,G,H,I,J)极其上的函数相关性集合F = {F->G, J->F,
HJ->I},该关系的候选关键字为?

分析:J->F->G, HJ->I. 所以
答案:H,J

2、设有关系模式R(A,B,C,D,E),模式中有函数依赖集合={A-BC,CD-E,B-D,E-A},试求关系模式R的所有候选码

分析:所以
这里写图片描述
怎样:
这里写图片描述
候选码:(1)A;(2)CD;(3)E;
??????

3、设有关系模式R(A,B,C,D,E), F是R上成立的函数依赖集, F={A->BC,B->D,E->A},试写出关系模式R的候选码,并说明理由.

分析:
这里写图片描述
或者这样看:
这里写图片描述

根据上面的推论1可知E为唯一的候选码;


类似:计算范式的

  • 21
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
2012年3月全国计算机等级考试二级笔试试卷 C语言程序设计 (考试时间90 分钟,满分100 分) 一、选择题((1)—(10)、(21)—(40)每题2 分,(11)—(20)每题1 分,共70 分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上, 答在试卷上不得分。 (1)下列叙述中正确的是 A)循环队列是队列的一种链式存储结构 B)循环队列是队列的一种顺序存储结构 C)循环队列是非线性结构 D)循环队列是一种逻辑结构 (2)下列叙述中正确的是 A)栈是一种先进先出的线性表 B)队列是一种后进先出的线性表 C)栈与队列都是非线性结构 D)以上三种说法都不对 (3)一棵二叉树共有25 个结点,其中5 个是叶结点,则度为1 的结点数为 A)16 B)10 C)6 D)4 (4)在下列模式中,能够给出数据库物理存储结构与物理存取方法的是 A)外模式 B)内模式 C)概念模式 D)逻辑模式 (5)在满足实体完整性约束的条件下 A)一个关系中应该有一个或多个候选关键字 B)一个关系中只能有一个候选关键字 C)一个关系中必须有多个候选关键字 D)一个关系中可以没有候选关键字 (6)有三个关系R、S和T 如下: R S T 则由关系R和S得到关系T 的操作是 A)自然连接 B)并 C)交 D)差 (7)软件生命周期中的活动不包括 A)市场调研 B)需求分析 C)软件测试 D)软件维护 (8)下面不属于需求分析阶段任务的是 A)确
计算机类MySQL数据库程序设计单选题   1、【题目】下列有关MySQL完整性约束的叙述中,正确的是______。   选项:   A.实体完整性可由主键约束或候选键约束来实现   B.对完整性约束只能进行添加操作   C.使用ALTERTABLE语句删除完整性约束的同时,会自动删除表本身   D.使用DROPTABLE语句删除一个表的同时,表中的完整性约束不会自动删除   答案:   A   解析:   暂无解析   1、【题目】要消除查询结果集中的重复值,可在 SELECT语句中使用关键字 ______。 计算机类MySQL数据库程序设计单选题全文共9页,当前为第1页。 计算机类MySQL数据库程序设计单选题全文共9页,当前为第1页。   选项:   A.UNION   B.DISTINCT   C.LIMIT   D.REMOVE   答案:   B   解析:   暂无解析   1、【题目】下列判断正确的是()。   选项:   答案:   D   解析: 计算机类MySQL数据库程序设计单选题全文共9页,当前为第2页。 计算机类MySQL数据库程序设计单选题全文共9页,当前为第2页。   暂无解析   1、【题目】在数据库系统的三级模式结构中,一个数据库只能有一个______。   选项:   A.模式和外模式   B.模式和内模式   C.模式   D.外模式   答案:   B   解析:   暂无解析   1、【题目】下述程序的输出结果是( )。   #include 计算机类MySQL数据库程序设计单选题全文共9页,当前为第3页。  main() 计算机类MySQL数据库程序设计单选题全文共9页,当前为第3页。   { int a[2][3]={{1 ,2,3) ,{4 ,5,6}} ,(*p)[3] ,i;   p=a ;   for(i=0;i<3;i++)   { if(i<2)   p[1][i]=p[1][i] 一 1;   else   p[1][i]=1;)   printf("%dn" ,a[0][1]+a[1][1]+a[1][2]);}   选项:   A.8   B.7   C.12   D.9 计算机类MySQL数据库程序设计单选题全文共9页,当前为第4页。  答案: 计算机类MySQL数据库程序设计单选题全文共9页,当前为第4页。   B   解析:   暂无解析   1、【题目】DBS的中文含义是 ______。   选项:   A.数据库系统   B.数据库管理员   C.数据库管理系统   D.数据定义语言   答案:   A   解析:   暂无解析 计算机类MySQL数据库程序设计单选题全文共9页,当前为第5页。 计算机类MySQL数据库程序设计单选题全文共9页,当前为第5页。   1、【题目】下列关于表和视图的叙述中错误的是______。   选项:   A.视图可以和表一起使用   B.表和视图上都可以创建索引   C.表和视图的数据都可以进行更新操作,但视图的更新受限   D.表和视图都可以使用SQL语句进行查询   答案:   B   解析:   暂无解析   1、【题目】MySQL成功安装后,在系统中默认建立的用户个数是______。   选项:   A.0 计算机类MySQL数据库程序设计单选题全文共9页,当前为第6页。  B.1 计算机类MySQL数据库程序设计单选题全文共9页,当前为第6页。   C.2   D.3   答案:   B   解析:   暂无解析   1、【题目】当使用CREATEDATABASE命令在MySQL中创建数据库时,为避免因数据库同名而出现的错误,通常可在该命令中加入______。   选项:   A.IFNOTEXISTS   B.NOTEXISTS   C.NOTEXIST   D.NOTEXISTIN   答案: 计算机类MySQL数据库程序设计单选题全文共9页,当前为第7页。 计算机类MySQL数据库程序设计单选题全文共9页,当前为第7页。   A   解析:   暂无解析   1、【题目】定义学生表时,若规定年龄字段取值不得超过30岁,应该使用的约束是______。   选项:   A.关系完整性约束   B.实体完整性约束   C.参照完整性约束   D.用户定义完整性约束   答案:   D   解析:   暂无解析 计算机类MySQL数据库程序设计单选题全文共9页,当前为第8页。 计算机类MySQL数据库程序设计单选题全文共9页,当前为第8页。   1、【题目】设fun()函数的定义形式为   voidfun(charch,floatx){"飣   则下列对函数fun的调用语句中,正确的是()。   选项:   
### 回答1: 在表4-8班级表中,如果存在符合以下条件的属性,则可以考虑将其选为主关键字: 1. 该属性的值在班级表中唯一标识一条数据记录; 2. 该属性的值不会经常变化; 3. 该属性的值能够与其他表建立关联关系。 一般来说,如果在班级表中存在一个属性满足以上条件,且该属性可以作为主键,则应该将其选为主关键字。如果不存在这样的属性,则可以考虑使用组合主键,即将多个属性的值组合在一起作为主键。需要注意的是,主关键字的选择应该尽可能地简单和稳定,以提高数据库的性能和可靠性。 ### 回答2: 在分析4-8班级表的候选关键字时,可以考虑以下几个因素来选取最合适的属性作为主关键字: 1. 唯一性:主关键字应该能够唯一标识每一条记录。通过分析表结构和业务需求,确定是否有对应的属性具有唯一性,例如学号、班级编号等。 2. 稳定性:主关键字应该是相对稳定的属性,不容易发生变化。如果选择的属性频繁更改,可能会影响到与其相关的外键关系或索引,导致数据操作和查询的不稳定性。 3. 业务需求:根据具体的应用场景和业务需求,考虑哪个属性更能够满足查询和连接操作的要求。例如,在查询学生所属班级的信息时,选择班级编号作为主关键字可能更方便。 综合考虑以上因素,对于4-8班级表,比较合适的主关键字可能是班级编号。班级编号一般具有唯一性,不容易发生变化,并且可以满足查询和连接操作的需求。当然,最终选择主关键字还需要结合具体的业务场景和需求来进行综合评估和决策。 ### 回答3: 在表4-8班级表(Class)中,判断是否存在合适的候选关键字来作为主关键字需要考虑以下几个因素: 1. 属性的唯一性:候选关键字应该具备唯一性,即每个班级的候选关键字属性在表中的每个记录中都是唯一的。 2. 属性的稳定性:候选关键字不应该经常变动,以便保持主关键字的稳定性和一致性。 3. 属性的简洁性:候选关键字应该尽可能简洁,以便提高数据库性能和查询效率。 4. 属性的易读性:候选关键字应该易于理解,方便用户进行数据库操作和查询。 基于以上考虑,班级表(Class)中的候选关键字属性可以选择班级编号(ClassID)作为主关键字。班级编号具备唯一性,且一旦班级编号确定后很少会发生变动,因此满足了唯一性和稳定性的要求。另外,班级编号通常是一个整数,不会过长,简洁性和易读性都较好。在数据库设计中,班级编号可以作为主关键字,方便进行数据的唯一标识和相关数据的关联操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值