关系数据库逻辑设计(一)
数据库概念设计及数据建模(一)_真题-无答案

数据库概念设计及数据建模(一)(总分66,考试时间90分钟)一、选择题1. 数据库概念设计需要对一个企业或组织的应用所涉及的数据进行分析和组织。
现有下列设计内容Ⅰ.分析数据,确定实体集Ⅱ.分析数据,确定实体集之间的联系Ⅲ.分析数据,确定每个实体集的存储方式Ⅳ.分析数据,确定实体集之间联系的基数Ⅴ.分析数据,确定每个实体集的数据量Ⅵ.分析数据,确定每个实体集包含的属性以上内容不属于数据库概念设计的是______。
A) 仅Ⅰ、Ⅳ和Ⅵ B) 仅Ⅱ和ⅤC) 仅Ⅲ、Ⅳ和Ⅵ D) 仅Ⅲ和Ⅴ2. 关于数据库概念设计阶段的工作目标,下列说法错误的是______。
A) 定义和描述应用系统设计的信息结构和范围B) 定义和描述应用系统中数据的属性特征和数据之间的联系C) 描述应用系统的数据需求D) 描述需要存储的记录及其数量3. 需求分析阶段的文档不包括______。
A) 需求说明书 B) 功能模型C) 各类报表 D) 可行性分析报告4. 数据库概念设计的依据不包括______。
A) 需求说明书 B) 功能模型C) 各类报表 D) 可行性分析报告5. 数据库逻辑设计的依据是______。
A) 需求说明书B) 功能模型C) 信息模型和数据库概念设计说明书D) 可行性分析报告6. 以下关于数据库概念设计阶段的目标叙述错误的是______。
A) 定义和描述应用领域涉及的数据范围B) 获取应用领域或问题域的物理模型C) 定义和描述数据的约束D) 保证信息模型方便地转换成数据库的逻辑结构7. 下列用于数据库概念设计的方法是______。
A) DFD方法和IDEF1X方法B) E-R方法和IDEF0方法C) E-R方法和IDEF1X方法D) DFD方法和IDEF0方法8. 最早提出的数据建模方法是______。
A) E-R B) IDEF1X C) DFD D) UML9. 以下关于数据建模方法的共同特点说法错误的是______。
数据库的逻辑设计

数据库的逻辑设计数据库的逻辑设计是指对数据库中的数据进行组织和管理的过程。
它是数据库设计的重要环节,直接关系到数据库的性能、可靠性和可维护性。
在进行数据库的逻辑设计时,需要考虑数据的组织结构、数据之间的关系和数据的操作方式等因素,以满足用户的需求。
在进行数据库的逻辑设计时,需要明确数据的组织结构。
数据的组织结构是指数据在数据库中的存储方式。
常见的数据组织结构包括层次结构、网状结构和关系结构等。
层次结构是将数据组织成树形结构,每个节点都有一个父节点和若干个子节点。
网状结构是将数据组织成网状结构,每个节点可以有多个父节点和多个子节点。
关系结构是将数据组织成表格形式,每个表格都有若干个字段和若干个记录。
在选择数据的组织结构时,需要综合考虑数据的特点、查询的频率和数据的维护成本等因素。
在进行数据库的逻辑设计时,需要考虑数据之间的关系。
数据之间的关系可以分为一对一关系、一对多关系和多对多关系。
一对一关系是指一个实体对应于另一个实体,且每个实体之间只有一个对应关系。
一对多关系是指一个实体对应于多个实体,而多个实体只对应于一个实体。
多对多关系是指多个实体之间存在多个对应关系。
在确定数据之间的关系时,需要考虑数据的实际含义和使用场景,以便实现数据的一致性和完整性。
在进行数据库的逻辑设计时,需要考虑数据的操作方式。
数据的操作方式包括增加数据、查询数据、修改数据和删除数据等。
在确定数据的操作方式时,需要考虑用户的需求和数据库的性能要求。
例如,如果用户需要频繁查询数据,那么可以对数据库进行索引设计,以提高查询效率。
如果用户需要频繁修改数据,那么可以对数据库进行事务设计,以保证数据的一致性和完整性。
数据库的逻辑设计是一个复杂而重要的过程。
在进行数据库的逻辑设计时,需要考虑数据的组织结构、数据之间的关系和数据的操作方式等因素,以满足用户的需求。
同时,还需要注意数据的一致性、完整性和安全性等问题,以确保数据库的性能、可靠性和可维护性。
逻辑数据库设计 - 单纯的树(多级递归关系数据)

逻辑数据库设计- 单纯的树(多级递归关系数据)相信有过开发经验的朋友都曾碰到过这样一个需求。
假设你正在为一个新闻网站开发一个评论功能,读者可以评论原文甚至相互回复。
这个需求并不简单,相互回复会导致无限多的分支,无限多的祖先-后代关系。
这是一种典型的递归关系数据。
对于这个问题,以下给出几个解决方案,各位客观可斟酌后选择。
一、邻接表:依赖父节点邻接表的方案如下(仅仅说明问题):CREATE TABLE Comments(CommentId int PK,ParentId int, --记录父节点ArticleId int,CommentBody nvarchar(500),FOREIGN KEY (ParentId) REFERENCES Comments(CommentId) --自连接,主键外键都在自己表内FOREIGN KEY (ArticleId) REFERENCES Articles(ArticleId) )由于偷懒,所以采用了书本中的图了,Bugs就是Articles:这种设计方式就叫做邻接表。
这可能是存储分层结构数据中最普通的方案了。
下面给出一些数据来显示一下评论表中的分层结构数据。
示例表:图片说明存储结构:邻接表的优缺分析对于以上邻接表,很多程序员已经将其当成默认的解决方案了,但即便是这样,但它在从前还是有存在的问题的。
分析1:查询一个节点的所有后代(求子树)怎么查呢?我们先看看以前查询两层的数据的SQL语句:SELECT c1.*,c2.*FROM Comments c1 LEFT OUTER JOIN Comments2 c2ON c2.ParentId = mentId显然,每需要查多一层,就需要联结多一次表。
SQL查询的联结次数是有限的,因此不能无限深的获取所有的后代。
而且,这种这样联结,执行Count()这样的聚合函数也相当困难。
说了是以前了,现在什么时代了,在SQLServer 2005之后,一个公用表表达式就搞定了,顺带解决的还有聚合函数的问题(聚合函数如Count()也能够简单实用),例如查询评论4的所有子节点:WITH COMMENT_CTE(CommentId,ParentId,CommentBody,tLevel)AS(--基本语句SELECT CommentId,ParentId,CommentBody,0AS tLevel FROM CommentWHERE ParentId =4UNION ALL--递归语句SELECT mentId,c.ParentId,mentBody,ce.tLevel + 1 FROM Comment AS cINNER JOIN COMMENT_CTE AS ce --递归查询ON c.ParentId = mentId)SELECT*FROM COMMENT_CTE显示结果如下:那么查询祖先节点树又如何查呢?例如查节点6的所有祖先节点:WITH COMMENT_CTE(CommentId,ParentId,CommentBody,tLevel)AS(--基本语句SELECT CommentId,ParentId,CommentBody,0AS tLevel FROM Comment WHERE CommentId =6UNION ALLSELECT mentId,c.ParentId,mentBody,ce.tLevel -1FROM Comment AS cINNER JOIN COMMENT_CTE AS ce --递归查询ON ce.ParentId = mentIdwhere mentId <> ce.ParentId)SELECT*FROM COMMENT_CTE ORDER BY CommentId ASC结果如下:再者,由于公用表表达式能够控制递归的深度,因此,你可以简单获得任意层级的子树。
关系数据库的模式设计习题及答案

数据库原理之关系数据库的模式设计课后习题及答案名词解释(1)函数依赖:FD(function dependency),设有关系模式R(U),X,Y是U的子集,r是R 的任一具体关系,如果对r的任意两个元组t1,t2,由t1[X]=t2[X]导致t1[Y]=t2[Y], 则称X函数决定Y,或Y函数依赖于X,记为X→Y。
X→Y为模式R的一个函数依赖。
(2) 函数依赖的逻辑蕴涵:设F是关系模式R的一个函数依赖集,X,Y是R的属性子集,如果从F中的函数依赖能够推出X→Y,则称F逻辑蕴涵X→Y,记为F|=X→Y。
(3) 部分函数依赖:即局部依赖,对于一个函数依赖W→A,如果存在X W(X包含于W)有X→A成立,那么称W→A是局部依赖,否则称W→A为完全依赖。
(4)完全函数依赖:见上。
(5) 传递依赖:在关系模式中,如果Y→X,X→A,且X Y(X不决定Y),A X(A 不属于X),那么称Y→A是传递依赖。
(6) 函数依赖集F的闭包F+: 被逻辑蕴涵的函数依赖的全体构成的集合,称为F的闭包(closure),记为F+。
(7) 1NF:第一范式。
如果关系模式R的所有属性的值域中每一个值都是不可再分解的值, 则称R是属于第一范式模式。
如果某个数据库模式都是第一范式的,则称该数据库存模式属于第一范式的数据库模式。
第一范式的模式要求属性值不可再分裂成更小部分,即属性项不能是属性组合和组属性组成。
(8) 2NF:第二范式。
如果关系模式R为第一范式,并且R中每一个非主属性完全函数依赖于R的某个候选键,则称是第二范式模式;如果某个数据库模式中每个关系模式都是第二范式的,则称该数据库模式属于第二范式的数据库模式。
(注:如果A是关系模式R的候选键的一个属性,则称A是R的主属性,否则称A是R的非主属性。
)(9)3NF:第三范式。
如果关系模式R是第二范式,且每个非主属性都不传递依赖于R的候选键,则称R是第三范式的模式。
如果某个数据库模式中的每个关系模式都是第三范式,则称为3NF的数据库模式。
数据库系统(四)---关系型数据库设计及E-R图

数据库系统(四)---关系型数据库设计及E-R图1、关系型数据库: 关系型数据库是⼀类采⽤关系模型作为逻辑数据模型的数据库系统,遵从数据库设计的基本步骤,包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库的运⾏和维护等阶段。
概念结构设计与逻辑结构设计是关系数据库整个设计过程的关键。
2、关系数据库设计过程与各级模式 在关系数据库设计的不同阶段,会形成数据库的各级模式。
1)需求分析阶段,综合各个⽤户的应⽤需求; 2)概念结构设计阶段,形成独⽴于机器特点、独⽴于各个关系数据库管理系统产品的概念模式; 3)逻辑结构设计阶段,将 E-R 图转换成具体的数据库产品⽀持的关系数据模型,形成数据库逻辑模式,然后根据⽤户处理的要求、安全性的考虑,在基本表的基础上再建⽴必要的视图,形成数据的外模式; 4)物理结构的设计阶段,根据关系数据库管理系统的特点和处理的需要,进⾏物理存储安排,建⽴索引,形成数据库内模式。
3、概念结构设计⽅法 关系数据库的概念结构设计通常采⽤⾃顶向下法,它通过两个步骤来完成概念设计,⾸先建⽴局部信息结构,然后将局部信息结构合成为全局信息结构并优化,使⽤ E-R 图作为概念模型的描述⼯具。
1)局部信息结构设计 局部信息结构设计:根据需求分析报告中标明的不同⽤户视图范围所建⽴的满⾜该范围内⽤户需求的信息结构,称为局部信息结构。
局部信息结构设计的步骤包括:确定局部范围;选择实体;选择实体关键字;确定实体间联系;确定实体的属性。
2)E-R 图的表⽰⽅法 概念结构设计就是将需求分析得到的⽤户需求抽象为信息结构的过程,通常使⽤ E-R 图来作为描述现实世界的建模⼯具。
E-R 图提供了表⽰信息世界中实体、属性和联系的⽅法。
1.实体型,⽤矩形表⽰,写明实体的名称; 2.属性,⽤椭圆形表⽰,并⽤⽆向边将其与其相应的实体连接起来。
3.联系,⽤菱形表⽰,写明联系的名称,⽤⽆向边分别与有关实体连接起来,同时在⽆向边旁标注联系的类型(1:1、1:N 或 M:N),如果⼀个联系具有属性,则这些属性也要⽤⽆向边与该联系连接起来。
关系数据库设计理论

五、FD的推理规则
从已知的FD集推导未知的FD,可以使用的推导规则 (Armstrong) 设有关系模式R(U),X、Y、Z是U的子集: A1(自反性):如果 Y X ,则有 XY 在R上成立。 A2(增广性):如果 XY 在R上成立,那么有 XZYZ A3(传递性):如果 XY和 YZ在R上成立,则有 XZ
S# -> SNAME C# -> TNAME (S#,C#) ->GRADE
三、属性间的联系和函数依赖 属性间的联系有三种,但并不是每一种关系中都存在函数 依赖,设有属性集X、Y属于关系模式R,
如果X和Y之间是‘1-1’关系,则存在函数依赖:
X YY, X
如果X和Y之间是‘1-M’关系,则存在函数依赖:
第五章 关系数据库设计理论
5.1 问题的提出-什么是不好的数据库设计
实际问题,假定在设计数据库时出现如下的关系模式: Student(Sno, Sname, Dept,Cno, Grade) 学生(学号,姓名,院系,课程号,成绩)
Sno Sname Dept Cno Grade
1000 李平 计算机 001
FD的分类: 1、对于FD:XY ,如果 Y X ,则称为“平凡的FD” 2、对于FD:XY ,如果 YX ,则称为“非平凡的FD” 3、对于FD:XY ,如果 YXφ则为“完全非平凡的FD”
Armstrong的推论: 1、合并规则: 由 XYX,Z可以 得 YZ 到X 2、分解规则: 由 XYZ可以 得 YX, 到 ZX 3、伪传递规则:由 XYY,WZ则得 到 Z XW
86
1000 李平 计算机 002
97
1000 李平 计算机 003
83
1001 王莉 计算机 001
数据库系统的设计方法(1)

设计步骤是:首先要将现实世界中的数据及应用情况用 数据流程图和数据字典表示,并详细描述其中的数据操作要求 (即操作对象、方法、频度和实时性要求),进而得出系统的层 次结构、功能模块结构和数据库的子模式。
3. 数据库的物理模式设计
要求:根据库结构的动态特性(即数据库应用处理要求), 在选定的DBMS环境下,把数据库的逻辑结构模型加以物理实现,从 而得出数据库的存储模式和存取方法。
内容:数据库的结构特性设计、行为特性设计和物理模式 设计。在数据库系统设计过程中,数据库结构特性的设计起着关键 作用,行为特性设计起着辅助作用,两者结合起来,相互参照,同 步进行,才能较好地达到设计目标。
1. 数据库的结构特性设计 数据库的结构特性是指数据库的逻辑结构特征。数据库的
结构特性设计又称为数据库的静态结构设计。 设计过程是:先将现实世界中的事物、事物间的联系用E-R
程。数据库设计过程是结构设计和行为设计分离设计、相互参照、 反复探寻的过程。
● 3.1.3 数据库设计的基本方法
手工试凑法。使用手工试凑法设计数据库与设计人员的 经验和水平有直接关系
新奥尔良(New Orleans)方法。是规范设计法中的一种, 它将数据库设计分为4个阶段:需求分析、概念设计、逻辑设计和 物理设计。其后,经过改进,认为数据库设计应分6个阶段进行: 需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据 库实施和数据库运行与维护。
在概念结构的设计过程中,设计者要对用户需求进行综合、 归纳和抽象,形成一个独立于具体计算机和DBMS的概念模型。 3.逻辑结构设计阶段
数据逻辑结构设计的主要任务是将概念结构转换为某个 DBMS所支持的数据模型,并将其性能进行优化。
4.数据库物理结构设计阶段 主要任务是为逻辑数据模型选取一个最适合应用环境的物
5_关系数据库设计

(2)数据流图(Data Flow Diagram,DFD)
数据流图从数据传递和加工的角度,来刻 画数据流从输入到输出的移动变换过程。
当系统比较复杂时,可以采用分层描述的方法。在处理功 能逐步分解的同时,它们所用的数据也逐级分解,形成若干层 次的数据流图。数据流图表达了数据和处理过程的关系。
(3)数据字典
需求分析阶段最后是编写系统分析报告,通常称为需求 规范说明书。需求规范说明书是对需求分析阶段的一个总结。 编写系统分析报告是一个不断反复、逐步深入与完善的过程, 系统分析报告应包括如下内容:
系统概况,系统的目标、范围、背景、历史和现状; 系统的原理和技术,对原系统的改善; 系统总体结构与子系统结构说明; 系统功能说明; 数据处理概要、工程体制和设计阶段划分; 系统方案及技术、经济、功能和操作上的可行性。
数据需求是指用户需要一个信息系统最终能够提供的所有数据, 通过分析制作数据流图。
3.确定处理需求 .
处理需求通常是指用户要求应用软件系统能够提供的 所有功能。根据业务需求以及数据需求可以进一步确定处 理需求。处理需求可用系统功能模块图表示。
【例5-3】 教务管理系统的功能模块图。 】
4.编写需求分析说明书 .
5.1.2数 据库设 计步骤
前四个步骤为数据库系统的分析与设计;后两个步骤 为数据库系统的实施、运行与维护。
1)需求分析:了解和分析用户的应用需求(包括信息需求和处理需 求),进行需求收集和分析,并以数据流图、数据字典等形式加以描 述。 2)概念设计:把需求分析阶段得到的用户需求进行综合、归纳和抽 象,形成一个独立于具体DBMS的概念数据模型。 3)逻辑设计:按照一组转换规则,将概念设计阶段产生的概念模型 转换为某个DBMS支持的逻辑数据模型。 4)物理设计:是为逻辑模型选取一个最适合应用环境的物理结构 (包括存取结构和存取方法)。 5)数据库实施:设计人员运用DBMS提供的数据库语言及其宿主语 言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程 序,组织数据入库,并进行试运行。 6)数据库运行与维护:数据库试运行后,即可投入正式运行。数据 库在运行期间应不断地对其进行评价、调整与修改。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关系数据库逻辑设计(一)(总分:116.98,做题时间:90分钟)一、选择题(总题数:37,分数:37.00)1.数据库逻辑设计的依据不包括______。
A) 概念模型 B) 安全性要求C) 数据约束 D) 功能模型(分数:1.00)A.B.C.D. √解析:[解析] 数据库逻辑设计的依据是数据库概念设计的结果,包括概念数据模型、数据处理要求、数据约束、安全性要求及DBMS的相关信息,因此本题答案为D。
2.以下关于数据库逻辑设计叙述错误的是______。
A) 数据库逻辑设计是面向机器世界的B) 这个阶段将按照数据库管理系统支持的数据模型来组织和存储数据C) 目标是得到实际的数据库管理系统可处理的数据库模式,并做到数据结构合理D) 包括定义和描述数据库的局部逻辑结构、数据之间的关系、数据完整性及安全性要求等(分数:1.00)A.B.C.D. √解析:[解析] 数据库逻辑设计包括定义和描述数据库的全局逻辑结构、数据之间的关系、数据完整性及安全性要求等。
因此本题答案为D。
3.在关系数据库设计中,设计关系模式是数据库设计中哪个阶段的任务______。
A) 逻辑设计阶段B) 概念设计阶段C) 物理设计阶段D) 需求分析阶段(分数:1.00)A. √B.C.D.解析:[解析] 关系数据模型是常用的逻辑数据模型,所以设计关系模式是数据库设计中逻辑设计阶段的任务,因此本题答案为A。
4.对于关系的主码必须满足的条件,有下列说法:Ⅰ.一个关系中的主码属性或属性组能函数决定该关系中的所有其他属性Ⅱ.一个关系中的主码属性不能与其他关系中的主码属性重名Ⅲ.在一个关系中,一个主码属性的任一真子集都不能函数决定其他属性Ⅳ.在一个关系中,从主码属性集中去掉某个属性仍能唯一标识一个元组以上说法正确的是______。
A) Ⅰ和Ⅱ B) Ⅰ和ⅢC) Ⅱ和Ⅲ D) Ⅱ和Ⅳ(分数:1.00)A.B. √C.D.解析:[解析] 两个关系中的主码属性是可以重名的,在一个关系中,从主码属性集中去掉某个属性后就不能唯一标识一个元组。
5.完整性约束不包括______。
A) 主码约束 B) 候选码约束C) 外码约束 D) 用户自定义完整性(分数:1.00)A.B. √C.D.解析:[解析] 完整性约束包括主码约束、外码约束和用户自定义完整性,所以本题的答案为B。
6.二维表中的一行数据被称为______。
A) 元组 B) 主码C) 域 D) 关系(分数:1.00)A. √B.C.D.解析:[解析] 二维表中的一行数据被称为元组,所以本题的答案为A。
B选项主码是能够唯一标识关系中每一个元组的属性或属性组。
C选项域定义了关系的每个属性取值的类型。
而整张表就是一个关系,D选项错误。
7.以下关于关系的完整性约束叙述错误的是______。
A) 关系的完整性约束分为静态完整性约束和动态完整性约束B) 动态完整性约束是基于关系模式的,主要由主码约束、外码约束和域约束组成C) 动态完整性约束更多的是基于企业或组织的业务规则的D) 主码必须满足唯一性(分数:1.00)A.B. √C.D.解析:[解析] 关系的完整性约束分为静态完整性约束和动态完整性约束。
静态完整性约束是基于关系模式的,主要由主码约束、外码约束和域约束(用户定义的约束)组成。
动态完整性约束更多的是基于企业或组织的业务规则的,所以本题的答案为B。
8.以下关于元组叙述错误的是______。
A) 关系是一个元数为K(K≥1)的元组的结合B) 关系中不允许出现相同的元组C) 元组中属性按一定次序排列D) 关系中不考虑元组之间的顺序(分数:1.00)A.B.C. √D.解析:[解析] 元组中属性是无序的,所以本题的答案为C。
9.当关系引用了属性名以后关系具有以下性质,其中说法错误的是______。
A) 部分属性值还可再分B) 关系中不允许出现相同的元组C) 元组中属性左右无序D) 关系中不考虑元组之间的顺序(分数:1.00)A. √B.C.D.解析:[解析] 当关系引用了属性名以后关系具有以下性质:不能有重复的元组、元组上下无序、按属性名引用时属性左右无序、所有属性值都是原子项(不可再分),所以本题的答案为A。
10.在关系模型概念中,不含多余属性的超码称为______。
A) 候选码 B) 主码C) 外码 D) 备用码(分数:1.00)A. √B.C.D.解析:[解析] 在关系模型概念中,不含多余属性的超码称为候选码,所以本题的答案为A。
11.关系数据库的特点包括______。
①概念简单②容易理解③使用方便④容易操作⑤容易维护A) ①②④⑤ B) ①③④⑤C) ①②③④ D) ①②③④⑤(分数:1.00)A.B.C.D. √解析:[解析] 关系数据库的特点包括概念简单;容易理解;使用方便;容易操作;数据库的重构、维护容易等,所以本题的答案为D。
12.以下关于关系的表现形式叙述错误的是______。
A) 关系是一张二维表B) 表中的一行被称为一个记录C) 属性由一组域值组成D) 一个指定的关系表中可以存放重复的记录(分数:1.00)A.B.C.D. √解析:[解析] 关系是一张二维表,表中的一行被称为一个元组(也称为记录),一列称为属性,由一组域值组成。
关系是元组的集合,关系中的每个元组在数学上被定义为这个关系所涉及的全部域值中笛卡儿积的一个元素。
而在关系数据库中,由于关系表中的一行(或一条记录)表示现实世界中同一类对象集合中的一个实例(对象),因而一个指定的关系表中不能存放两条完全相同的记录,所以本题的答案为D。
13.数据库中数据的正确性和合法性是指关系的______。
A) 完整性 B) 安全性C) 并发性 D) 一致性(分数:1.00)A. √B.C.D.解析:[解析] 关系的完整性也被称为完整性约束(Integrity Constraint,IC),是对关系的某种约束规则和关系满足条件的定义。
通常,这组约束规则用来限定和检查数据库所含实例的合法性和正确性。
所以本题的答案为A。
14.以下关于主码及主码约束说法错误的是______。
A) 在一个关系中不存在两个元组,它们具有相同的主码值B) 不存在从组成主码的属性集中去掉一个属性,还能保持数据的唯一性C) 关系模型通过主码约束维护关系的完整性D) 如果属性A为关系B的主码,则在关系R中没有一个元组在属性B上的属性位为空值(分数:1.00)A.B.C.D. √解析:[解析] 主码必须满足的条件,唯一性,即在一个关系中不存在两个元组,它们具有相同的主码值;最小性,即不存在从组成主码的属性集中去掉一个属性,还能保持数据的唯一性;如果属性A为关系B的主码,则在关系R中没有一个元组在属性A上的属性位为空值。
所以本题的答案为D。
15.以下哪种类型的数据库使用树形数据结构组织和存储数据______。
A) 层次数据库 B) 网状数据库C) 关系数据库 D) 面向对象数据库(分数:1.00)A. √B.C.D.解析:[解析] 层次数据库使用树形数据结构组织和存储数据,网状数据库使用网状模型数据结构组织和存储数据,关系数据库采用二维表结构组织和存储数据。
所以本题的答案为A。
16.己知有描述科研项目及负责教师的关系模式:科研项目(项目号,项目名称,经费,负责教师号,姓名,职称),该关系模式满足函数依赖集:F=项目号→项目名称,项目号→经费,项目号→负责教师号,负责教师号→姓名,负责教师号→职称。
下列分解中最合理的符合3NF的关系模式是______。
A) 科研项目(项目号,项目名称,经费),教师(教师号,硅名,职称)B) 科研项目(项目号,项目名称,经费),教师(教师号,姓名,职称,项目号)C) 科研项目(项目号,项目名称,经费,负责教师号),教师(教师号,姓名,职称)D) 科研项目(项目号,项目名称,经费),项目_教师(项目号,负责教师号),教师(教师号,姓名,职称)(分数:1.00)A.B.C.D. √解析:[解析] 第三范式定义为:如果关系R为第一范式,且不存在非主属性对主码的传递函数依赖。
显然C为最佳。
17.设有关系模式SC(Sno,Sname,Sex,Birthdar,Cno,Cname,Grade,Tno,Tname)满足函数依赖集:Sno→Sname,Sno→Sex,Sno→Birthday,Cno→Cname,(Sno,Cno)→Grade,Tno→Tname。
SC的主码和属性集(Sno,Tno)的闭包分别是______。
A) (Sno,Tno)和Cno,Cname,Grade,Tno,TnameB) (Sno,Cno,Tno)和Sno,Sname,Sex,Birthday,CnoC) (Sno,Cno)和Sno,Shame,Sex,Birthday,Cno,Cname,GradeD) (Sno,Cno,Tno)和Sno,Sname,Sex,Birthdayr,Tno,Tname(分数:1.00)A.B.C.D. √解析:[解析] 本题考查的知识点是完全与部分函数依赖。
主码属性必须完全函数决定关系的所有其他属性,由Cno→Cname可知Cno是主属性之一,同理Tno也是主属性之一。
A、C选项错误。
闭包的推算过程为:{Sno,Tno}→{Sno,Tno,Sname,Sex,Birthday,Tname}。
所以本题答案为D。
18.已知学生关系(学号,姓名,性别,课程号,成绩,所在系号)有下列函数依赖Ⅰ.(学号,课程号)→课程号Ⅱ.(学号,课程号)→成绩Ⅲ.(学号,课程号)→所在系号Ⅳ.(学号,课程号)→姓名,性别Ⅵ.(学号,课程号)→学号以上函数依赖属于非平凡函数依赖的是______。
A) 仅Ⅰ和Ⅴ B) 仅Ⅱ和ⅤC) 仅Ⅲ和Ⅳ D) 仅Ⅱ、Ⅲ和Ⅳ(分数:1.00)A.B.C.D. √解析:[解析] 若X→Y,但Y属于X,则称该函数依赖为平凡函数依赖,否则为非平凡函数依赖。
19.下列约束中能确保一个函数依赖是完全非平凡函数依赖的是______。
A) 仅当其右边的属性集是左边属性集的子集B) 仅当其右边属性集中的属性都不属于左边的属性集C) 仅当其右边属性集中至少有一个属性不属于左边的属性集D) 仅当其右边属性集中的属性都属于左边的属性集(分数:1.00)A.B. √C.D.解析:[解析] 若X→Y,但Y∈X,则称X→Y是平凡函数依赖,否则称为非平凡函数依赖。
即只要Y[*]X,即当其右边的属性集中至少有一个属性不属于左边的属性集时就能保证是非函数依赖。
而完全非函数依赖须当其右边的属性集中的属性都不属于左边的属性集。
20.下列不属于非平凡函数依赖的是______。
A) (CustomerID,ProviderID,BuyDate)→GoodsNameB) (CustomerID,ProviderID,BuyDate)→GoodsName,ProviderIDC) (CustomerID,ProviderID,BuyDare)→GoodsClassIDD) (CustomerID,ProvideIID,BuyDate)→ProviderID(分数:1.00)A.B.C.D. √解析:[解析] 根据定义,若X→Y,但Y∈X,则称X→Y是平凡函数依赖,否则称为非平凡函数依赖。