关系数据库逻辑设计(一)

合集下载

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

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

数据库概念设计及数据建模(一)(总分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图

数据库系统(四)---关系型数据库设计及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)

数据库系统的设计方法(1)

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

5_关系数据库设计

5_关系数据库设计

(2)数据流图(Data Flow Diagram,DFD)
数据流图从数据传递和加工的角度,来刻 画数据流从输入到输出的移动变换过程。
当系统比较复杂时,可以采用分层描述的方法。在处理功 能逐步分解的同时,它们所用的数据也逐级分解,形成若干层 次的数据流图。数据流图表达了数据和处理过程的关系。
(3)数据字典
需求分析阶段最后是编写系统分析报告,通常称为需求 规范说明书。需求规范说明书是对需求分析阶段的一个总结。 编写系统分析报告是一个不断反复、逐步深入与完善的过程, 系统分析报告应包括如下内容:
系统概况,系统的目标、范围、背景、历史和现状; 系统的原理和技术,对原系统的改善; 系统总体结构与子系统结构说明; 系统功能说明; 数据处理概要、工程体制和设计阶段划分; 系统方案及技术、经济、功能和操作上的可行性。
数据需求是指用户需要一个信息系统最终能够提供的所有数据, 通过分析制作数据流图。
3.确定处理需求 .
处理需求通常是指用户要求应用软件系统能够提供的 所有功能。根据业务需求以及数据需求可以进一步确定处 理需求。处理需求可用系统功能模块图表示。
【例5-3】 教务管理系统的功能模块图。 】
4.编写需求分析说明书 .
5.1.2数 据库设 计步骤
前四个步骤为数据库系统的分析与设计;后两个步骤 为数据库系统的实施、运行与维护。
1)需求分析:了解和分析用户的应用需求(包括信息需求和处理需 求),进行需求收集和分析,并以数据流图、数据字典等形式加以描 述。 2)概念设计:把需求分析阶段得到的用户需求进行综合、归纳和抽 象,形成一个独立于具体DBMS的概念数据模型。 3)逻辑设计:按照一组转换规则,将概念设计阶段产生的概念模型 转换为某个DBMS支持的逻辑数据模型。 4)物理设计:是为逻辑模型选取一个最适合应用环境的物理结构 (包括存取结构和存取方法)。 5)数据库实施:设计人员运用DBMS提供的数据库语言及其宿主语 言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程 序,组织数据入库,并进行试运行。 6)数据库运行与维护:数据库试运行后,即可投入正式运行。数据 库在运行期间应不断地对其进行评价、调整与修改。

数据库逻辑模型设计

数据库逻辑模型设计

n
(2) 笛卡尔积(Cartesian Product)
5)笛卡尔积的表示方法 – 笛卡尔积可表示为一个二维表。表中的每行 对应一个元组,表中的每列对应一个域。
在上例中,12个元组可列成一张二维表
表 2.1
SUPERVISOR 张清玫 张清玫 张清玫 张清玫 张清玫 张清玫 刘逸 刘逸 刘逸 刘逸 刘逸 刘逸
– 所有域的所有取值的一个组合 – 不能重复
(2) 笛卡尔积(Cartesian Product)
例2-1 给出三个域: D1=SUPERVISOR ={ 张清玫,刘逸 } D2=SPECIALITY={计算机专业,信息专业} D3=POSTGRADUATE={李勇,刘晨,王敏} 则D1,D2,D3的笛卡尔积为: D1× D2× D3 = {(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨), (张清玫,计算机专业,王敏),(张清玫,信息专业,李勇), (张清玫,信息专业,刘晨),(张清玫,信息专业,王敏), (刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨), (刘逸,计算机专业,王敏),(刘逸,信息专业,李勇), (刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) }
项目3 逻辑模型设计
数据库设计的步骤: 1. 需求分析 2. 概念结构设计 3. 逻辑结构设计 4. 数据库的物理设计 5. 数据库实施 6. 数据库运行与维护
数据库三级模式结构
不同的人员涉及不同的数据抽象级别,具有不同的数 据视图,如下图所示
各种人员的数据视图
项目3 逻辑模型设计
学习目标:
1.了解关系模型的基本概念; 2. 理解关系数据库的概念; 3. 掌握函数依赖、范式的定义; 4. 理解关系模式规范化的意义; 5. 熟练掌握模式分解的方法; 6. 熟练掌握E-R图向关系数据模型转换 的规则和方法。

关系数据库设计理论练习题(答案) (1)

关系数据库设计理论练习题(答案) (1)

第四章关系数据库设计理论练习题一、选择题1、关系规范化中的删除操作异常是指①A,插入操作异常是指②DA、不该删除的数据被删除.B、不该插入的数据被插入;C、应该删除的数据未被删除;D、应该插入的数据未被插入.2、关系数据库规范化是为解决关系数据库中()问题而引入的。

A、插入异常、删除异常和数据冗余;B、提高查询速度;C、减少数据操作的复杂性;D、保证数据的安全性和完整性。

3、假设关系模式R(A,B)属于3NF,下列说法中()是正确的。

A、R一定消除了插入和删除异常;B、R仍可能存在一定的插入和删除异常;C、R一定属于BCNF;D、A和C都是.4、关系模式的分解A、唯一B、不唯一.5、设有关系W(工号,姓名,工种,定额),将其规范化到第三范式正确的答案是()A、W1(工号,姓名),W2(工种,定额);B、W1(工号,工种,定额),W2(工号,姓名);C、W1(工号,姓名,工种),W2(工种,定额);D、以上都不对.6、设学生关系模式为:学生(学号,姓名,年龄,性别,平均成绩,专业),则该关系模式的主键是()A、姓名;B、学号,姓名;C、学号;D、学号,姓名,年龄. 7根据数据库规范化理论,下面命题中正确的是()A、若R∈2NF,则R∈3NFB、若R∈1NF,则R不属于BCNFC、若R∈3NF,则R∈BCNFD、若R∈BCNF,则R∈3NF8、关系数据库设计理论中,起核心作用的是A、范式;B、模式设计;C、函数依赖;D、数据完整性.9、设计性能较优的关系模设称为规范化,规范化的主要理论依据是()A、关系规范化理论;B、关系运算理论;C 、关系代数理论;D 、数理逻辑。

10、规范化理论是关系数据库进行逻辑设计的理论依据。

根据这个理论,关系数据库中的关系必须满足:其每一属性都是( )A 、互不相关的;B 、不可分解的C 、长度可变的;D 、互相关联的。

11、规范化过程主要为克服数据库逻辑结构中的插入异常、删除异常以及( )的缺陷。

数据库课程设计(完整版)

数据库课程设计(完整版)

数据库物理设计
为逻辑数据模型选取一个最适合应用要求的物理结构。
数据库实施
运用数据库管理系统提供的数据语言及其宿主语言,建 立数据库,编制与调试应用程序,组织数据入库并进行 试运行。
数据库运行和维护
对数据库系统进行评价、调整与修改。
课程设计要求
学生应独立完成课程设计的 全部内容,包括需求分析、 概念设计、逻辑设计、物理
物理设计 根据在线购物系统的特点和数据 量,进行数据库的物理存储、备 份恢复、性能优化等方面的设计 。
概念设计
采用E-R图等方法进行概念设计 ,抽象出商品、订单、用户等实 体,以及它们之间的联系和属性 。
逻辑设计
将概念模型转化为数据库逻辑模 型,设计商品表、订单表、用户 表等,定义字段、索引、约束等 。
物理设计
根据学生成绩管理系统的特点和数据量,进行数 据库的物理存储、备份恢复、性能优化等方面的 设计。同时,考虑数据的安全性和完整性,采取 相应的措施进行保护。
感谢您的观看
THANKS
构建概念模型
用图形化方式表示系统的主要实体、关系和业务 流程。
概念模型构建
识别实体和属性
找出系统中的主要实体(如用户、订单、产 品等)及其属性(如用户名、订单日期、产 品名称等)。
定义关系
确定实体之间的关系(如一对一、一对多、多对多 等)以及关系的属性(如关联类型、关联规则等) 。
构建概念模型图
使用实体-关系图(E-R图)或统一建模语言 (UML)等工具绘制概念模型。
为后续设计提供基础。
识别数据需求和数据处理
02
了解各类数据的属性、关系及处理需求,为数据库设计提供依
据。
为系统设计和开发提供指导

数据库的逻辑设计

数据库的逻辑设计

数据库的逻辑设计数据库的逻辑设计是指在数据库物理设计之前,对数据库进行概念上的设计,包括数据模型的选择、实体关系图的绘制、数据属性的定义等。

其主要目的是为了确保数据库的正确性、完整性、一致性和可扩展性,以满足用户的需求。

逻辑设计的主要内容包括以下几个方面:1. 数据模型的选择数据模型是数据库逻辑设计的基础,它描述了数据之间的关系和约束条件。

常见的数据模型有层次模型、网状模型、关系模型等。

在选择数据模型时,需要考虑数据的复杂性、应用的需求、数据的可扩展性等因素。

2. 实体关系图的绘制实体关系图是逻辑设计的重要工具,它用于描述数据实体之间的关系。

在绘制实体关系图时,需要确定实体、属性和关系,并定义它们之间的约束条件。

实体关系图的绘制需要遵循一定的规范,以确保图形的清晰、简洁和易于理解。

3. 数据属性的定义数据属性是指数据实体所包含的属性,包括数据类型、长度、精度、默认值等。

在定义数据属性时,需要考虑数据的完整性、一致性和可扩展性,以确保数据的正确性和有效性。

4. 数据库的规范化规范化是指将数据库中的数据分解成更小的、更简单的数据结构,以消除数据冗余和不一致性。

规范化可以提高数据库的性能和可维护性,但也需要考虑数据的可用性和查询效率。

5. 数据库的安全性设计数据库的安全性设计是指在逻辑设计阶段考虑数据的保密性、完整性和可用性。

安全性设计包括用户权限管理、数据加密、备份和恢复等措施,以确保数据的安全和可靠性。

总之,数据库的逻辑设计是数据库设计的重要环节,它直接影响到数据库的性能、可维护性和安全性。

在进行逻辑设计时,需要充分考虑用户的需求和数据的特点,以确保数据库的正确性和有效性。

数据库概念设计 逻辑设计 物理设计

数据库概念设计 逻辑设计 物理设计

数据库概念设计逻辑设计物理设计数据库概念设计、逻辑设计和物理设计是数据库设计过程中非常重要的三个阶段。

它们分别对应着数据库设计的不同层次和不同方面,共同构成了一个完整的数据库设计流程。

在本文中,我们将从简单到复杂,由浅入深地分别介绍这三个阶段的内容及其重要性,帮助读者更好地理解数据库设计的全貌。

1. 数据库概念设计数据库概念设计是数据库设计的第一个阶段,主要目的是确定数据库的总体结构和基本组成,包括实体、属性和关系等。

在这个阶段,我们需要明确需求分析、数据流图和实体关系图等内容,为后续的逻辑设计提供基础。

数据库概念设计的核心是数据模型,常用的数据模型包括层次模型、网络模型、关系模型和面向对象模型等。

通过数据库概念设计,我们可以建立起对数据库整体架构的初步认识,为后续的设计工作奠定基础。

2. 逻辑设计逻辑设计是数据库设计的第二个阶段,主要任务是将概念设计阶段所得到的数据库模型转化为具体的数据表结构和约束条件。

逻辑设计需要考虑数据库的性能、安全性、可维护性和扩展性等方面,通常需要使用ER模型和ER图来描述实体、属性和关系之间的联系。

在逻辑设计中,我们要考虑到数据的用途和访问方式,适当地进行范式分解,避免数据冗余和不一致性。

逻辑设计是数据库设计的关键步骤,对数据库的性能和适用性有着重要影响。

3. 物理设计物理设计是数据库设计的最后一个阶段,其主要任务是将逻辑数据模型转化为实际的数据库对象,包括数据表、索引、存储过程、触发器等。

在物理设计中,我们需要考虑到数据库的存储结构、索引策略、分区方案、数据备份和恢复等方面,以保证数据库系统的高效性和可靠性。

物理设计需要根据具体的数据库管理系统来确定最佳的实现方式,包括数据库引擎的选择、存储引擎的配置、内存和磁盘的分配等。

物理设计是数据库设计的最终成果,直接影响着数据库系统的性能和可靠性。

总结回顾通过本文的介绍,我们可以发现数据库概念设计、逻辑设计和物理设计三个阶段相互联系、相互依赖,共同构成了数据库设计的完整过程。

关系数据库的设计步骤

关系数据库的设计步骤

关系数据库的设计步骤
1、用户需求分析:首先需要了解客户所需要的数据库的应用背景,
包括存储的数据的功能,以及数据库所需要进行的各项功能和运算,分析
它们之间的联系及关系,从而明确出用户需求,为后续数据库设计提供依据。

2、确定逻辑模型:根据用户需求,选择合适的ER模型,确定实体和
实体与实体之间的关联关系,以及实体的属性,形成逻辑模型,此逻辑模
型是数据库设计的核心步骤。

3、确定数据字典:确定数据字典,定义每一个属性的属性名称、属
性类型以及键的类型,确定每一个实体的主键,并且定义属性及其属性之
间的关系,以及各表之间的关联关系。

4、确定完整性约束:确定完整性约束,包括主键约束、外键约束、
参照完整性等,以及实体与实体之间可能存在的业务约束,确保数据库中
数据的准确性、完整性、可靠性。

5、设计物理结构:将建立的逻辑模型转换为物理模型,针对不同的
数据库管理系统,利用数据库设计工具建立出恰当的索引、表等物理结构,使之能够被系统所识别并支持。

关系数据库模型与关系数据库设计

关系数据库模型与关系数据库设计


属性( 属性(Attribute) ) 主码( 主码(Key) )
表中的某个属性组,它可以唯一确定一个元组。 表中的某个属性组,它可以唯一确定一个元组。
表中的一列即为一个属性,给每一个属性起一个名称即属性名。 表中的一列即为一个属性,给每一个属性起一个名称即属性名。

关系模型的基本概念2 关系模型的基本概念
用户定义的完整性(续 用户定义的完整性 续)
例:
学生学生(学号,姓名,性别,班级代号,年龄) 学生学生(学号,姓名,性别,班级代号,年龄)
– –
例如用户定义 “性别”只能取“男”或“女” 年龄在18到25岁之间
2.1.4. 典型的关系数据库系统
– – – – – – – – –
ORACLE SYBASE INFORMIX DB/2 COBASE PBASE EasyBase DM/2 OpenBase
关系数据模型的数据结构(续 关系数据模型的数据结构 续)
例2
学生实体、专业实体以及专业与学生间 的一对多联系 学生(学号,姓名,性别,班级代号,年龄) 学生(学号,姓名,性别,班级代号,年龄) 班级(班级代号,班级名称) 班级(班级代号,班级名称)
学生学生(学号,姓名,性别,班级代号,年龄)
学号 801 802 803 804 805 姓名 张三 李四 王五 赵六 钱七 性别 女 男 男 女 男 班级代号 年龄 1001 1001 1001 1002 1002 19 20 20 20 19
关系数据模型的数据结构
实体及实体间的联系的表示方法
– – – – –
实体型:直接用关系(二维表)表示。 实体型:直接用关系(二维表)表示。 属性:用属性名(列名)表示。 属性:用属性名(列名)表示。 一对一联系:隐含在实体对应的关系中。 一对一联系:隐含在实体对应的关系中。 一对多联系:隐含在实体对应的关系中。 一对多联系:隐含在实体对应的关系中。 多对多联系:直接用关系表示 多对多联系:直接用关系表示。

数据库设计逻辑结构设计

数据库设计逻辑结构设计

数据库设计逻辑结构设计
数据库的逻辑结构设计包括三个部分:概念结构设计、逻辑结构
设计和物理结构设计。

概念结构设计是指通过对应用领域的概念进行分析和抽象,构建
出概念模型,提取出应用中的实体、属性和它们之间的关系以及对应
的业务规则。

在此基础上可以建立出实体关系图(ER图)来表示应用
的概念模型。

逻辑结构设计是在概念结构设计的基础上,考虑数据的存储和处理,进行规范化处理,确定各表之间的关系,并进行数据操作的优化。

在此过程中,要注意保持数据的一致性、完整性、安全性和易用性等
方面的问题。

物理结构设计是在逻辑结构设计的基础上,将规范化后的数据结
构转换为存储在数据库中的实际数据结构,包括数据表、字段、索引、视图等。

在此过程中,需要考虑数据的存储效率、可维护性和可扩展
性等方面的问题。

综上所述,数据库设计的逻辑结构设计是建立在概念结构设计的
基础上,通过对数据的存储和处理进行规范化处理,确定各表之间的
关系,并进行数据操作的优化,最终转换为存储在数据库中的实际数
据结构。

数据库工程师复习重点:关系数据库逻辑设计

数据库工程师复习重点:关系数据库逻辑设计

数据库工程师复习重点:关系数据库逻辑设计关系数据库逻辑设计5.1 概述5.2 基本概念5.2.1 关系模型1、关系模型采用一个二维表格在计算机中组织、存储、处理和管理数据。

(1) 关系名(数据库名):由字母数字组成;(2) 属性名;(3) 关系模式和关系:描述模式描述关系的静态结构,由模式名、关系模式所包含的属性及属性值所满足的条件组成模式定义。

(4) 元组:描述关系中的行;(5) 域:它定义关系的每个属性取值的类型;(6) 主码:能够惟一标识关系中每一个元组的属性或属性组;(7) 关系的数学定义:关系模式是建立在集合集论的基础上的,用数学的概念定义关系有;(A) 定义一:域是值的集合,同一个域中的值具有相同的数据类型;(B) 定义二:(C) 定义三:(D) 当关系引用了属性名后关系具有以下属性:[1] 不能有重复的元组;[2] 元组上下无序;[3] 按属性名引用时属性左右无序;[4] 所有属性值都是原子项(不可再分);(8) 总结:关系是一张二维表,表中的一行被称为一个元组,一列称为属性,由一组域值组成。

关系是元组的集合,关系中的每个元组在数学上被定义为这个关系所涉及的全部域值中笛卡儿积的一个元素。

5.2.2 关系数据库1、关系数据库是按照二维表组织和存储的相互关联的关系的集合,关系数据库模式是关系模式的集合;5.2.3 关系的完整性1、关系的完整性(完整性约束):是对关系的某种约束规则和关系满足的定义。

通常这组约束规则用来限定和检查数据库所含实例的合法性和正确性;2、完整性约束分静态和动态两种,静态完整性约束是基于关系模式的,主要有主码、外码约束和域约束组成;动态完整性约束是基于企业的业务规则的。

3、静态完整性约束规则:(1) 主码约束:主码必须满足:(A) 惟一性:在一个关系中不存在两个元组,它们具有相同的主码值;(B) 最小性:不存在从组成主码的属性集中去掉一个属性,还仍能保持数据的惟一性;(2) 外码约束:(3) 用户定义的完整性:5.3 关系数据库设计理论5.3.1 问题的提出究竟一个关系数据库包含哪些属性是合理的,如何评价一个关系模式设计的优劣?5.3.2 函数依赖函数依理论利用一个关系中属性之间的依赖关系评价和优化关系模式,以保证存储到数据库中的关系具有较好特性;1、函数依赖:(1) 设R(U)为一关系模式,X和Y为属性全集U的子集,若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称“X函数决定Y”或“Y函数依赖于X”,并记作X Y,其中X称为决定因素,因为根据函数依赖定义,给定一个X,就能惟一决定一个Y。

关系数据库逻辑模型

关系数据库逻辑模型

关系数据库逻辑模型引言:关系数据库逻辑模型是数据库设计的基础,它描述了数据库中数据的结构和关系。

逻辑模型定义了实体、属性和实体之间的关系,使得数据能够以一种有组织的方式存储和操作。

在本文中,我们将介绍关系数据库逻辑模型的基本概念和常用的模型类型。

一、关系数据库的基本概念1. 实体:在关系数据库中,实体是指需要存储的具体对象或概念,如学生、课程、员工等。

2. 属性:属性是实体的特征或属性,它描述了实体的某个方面,如学生的姓名、课程的名称等。

3. 关系:关系是实体之间的联系,它表示两个或多个实体之间的关联关系,如学生选课、员工所属部门等。

二、关系数据库逻辑模型的常用类型1. 层次模型:层次模型是关系数据库逻辑模型的一种,它使用树状结构来组织数据。

在层次模型中,数据被组织成一个层次结构,每个实体都有一个父实体和若干个子实体。

这种模型适用于具有明确定义的层次结构的数据,如组织结构、产品分类等。

2. 网状模型:网状模型是关系数据库逻辑模型的另一种形式,它使用图状结构来组织数据。

在网状模型中,数据之间的关系可以是多对多的,每个实体可以与其他实体直接连接。

这种模型适用于存在复杂关联关系的数据,如图书馆的借阅关系、网络拓扑结构等。

3. 关系模型:关系模型是关系数据库逻辑模型的核心,也是最常用的一种模型。

在关系模型中,数据被组织成表格的形式,每个表格代表一个实体,每一行代表一个实体的具体记录,每一列代表一个属性。

通过定义表格之间的关系,可以实现数据的查询和操作。

关系模型具有结构清晰、数据一致性好、易于扩展等优点,广泛应用于各个领域的数据库设计。

三、关系数据库逻辑模型的设计原则1. 实体和属性的识别:在设计关系数据库逻辑模型时,首先需要明确实体和属性的识别。

实体应该具有明确的定义和唯一标识,属性应该与实体相关且具有明确的定义和类型。

2. 关系的定义:关系应该准确地定义实体之间的联系和依赖关系。

关系的定义应该具有清晰的语义和明确的命名,以便于后续的查询和操作。

数据库逻辑模式

数据库逻辑模式

数据库逻辑模式一、什么是数据库逻辑模式数据库逻辑模式是指数据库在逻辑上的组织结构和数据之间的关系。

它定义了数据库中数据的结构、约束和操作,包括实体、属性、关系、索引等。

数据库逻辑模式是用户和应用程序所看到和使用的数据库的外部表示,它与数据库的物理存储方式和内部实现无关。

二、数据库逻辑模式的重要性数据库逻辑模式在数据库设计和应用程序开发中起着重要的作用。

它能够提供数据的一致性、完整性和安全性,为应用程序提供方便的数据访问和操作接口。

数据库逻辑模式的合理设计能够提高数据库的性能和可扩展性,同时减少数据冗余和数据不一致的可能性。

三、数据库逻辑模式的基本元素数据库逻辑模式包括实体、属性、关系和约束等基本元素。

3.1 实体实体是数据库中的一个独立的对象,可以是现实世界中的一个具体事物或抽象概念,如人、物、事件等。

每个实体由一组属性来描述,属性是实体的特征或属性。

实体与实体之间可以存在关系,通过关系可以描述实体之间的联系和依赖关系。

3.2 属性属性是实体的特征或属性,用于描述实体的特性。

属性包括名称、数据类型、长度、精度等。

属性的值是实体的实例的具体取值。

3.3 关系关系是实体之间的联系和依赖关系,用于描述实体之间的关系和依赖。

关系有一对一、一对多和多对多等不同的类型。

关系可以通过主键、外键等约束来保证数据的完整性和一致性。

3.4 约束约束是对数据库中数据的限制条件,用于保证数据的一致性和完整性。

常见的约束包括主键约束、外键约束、唯一约束、非空约束等。

约束可以用来限制数据的取值范围、关系的完整性和一致性。

四、数据库逻辑模式的设计方法数据库逻辑模式的设计是一个复杂的过程,需要考虑多个因素。

下面介绍一些常用的数据库逻辑模式设计方法。

4.1 实体-关系模型实体-关系模型是一种常用的数据库逻辑模式设计方法。

它通过实体、属性和关系来描述数据库中的数据结构和数据之间的关系。

实体-关系模型可以用来表示实体之间的联系、依赖关系和约束条件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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是平凡函数依赖,否则称为非平凡函数依赖。

相关文档
最新文档