第4章数据库设计方法

合集下载

第四章 数据库设计基础——关系运算

第四章 数据库设计基础——关系运算

3. 交(Intersection) )
R和S
具有相同的目n 相应的属性取自同一个域
R∩S
仍为n目关系,由既属于R又属于S的元组组成 R∩S = { t|t ∈ R∧t ∈S } R∩S = R –(R-S)
An Introduction to Database System
交 (续) 续
An Introduction to Database System
(c)
An Introduction to Database System
1. 选择(Selection) 选择( )
1) 选择又称为限制(Restriction) 2) 选择运算符的含义 在关系R中选择满足给定条件的诸元组 σF(R) = {t|t∈R∧F(t)= '真'} F:选择条件,是一个逻辑表达式,基本形式为:
学生-课程数据库: 学生关系Student、课程关系Course和选修关系SC
Student
学号 Sno 200215121 200215122 200215123 200215125 姓名 Sname 李勇 刘晨 王敏 张立 性别 Ssex 男 女 女 男 (a) 年龄 Sage 20 19 18 19 所在系 Sdept CS IS MA IS
An Introduction to Database System
(b)
专门的关系运算(续 专门的关系运算 续)
SC
学号 Sno 200215121 200215121 200215121 200215122 200215122 课程号 Cno 1 2 3 2 3 成绩 Grade 92 85 88 90 80
200215121 200215121 200215122 200215122

第4篇关系数据库设计理论

第4篇关系数据库设计理论
2NF规范化是指把1NF关系模式通过投影分解,消除 非主属性对候选关键字的部分函数依赖,转换成2NF关 系模式的集合的过程。
注意:如果R的候选关键字均为单属性,或R的全体 属性均为主属性,则R∈2NF。
4.2.6 第三范式
1.第三范式的定义 定义4.8 如果关系模式R∈2NF,R(U,F)中所有
非主属性对任何候选关键字都不存在传递函数依赖, 则称R是属于第三范式(Third Normal Form),简称 3NF,记作R∈3NF。 第三范式具有如下性质: (1)如果R∈3NF,则R也是2NF。 (2)如果R∈2NF,则R不一定是3NF。
4.2.1 函数依赖
(2)扩张性 若 X→Y 且 W→Z , 则 ( X , W ) → ( Y , Z ) 。 例 如 ,
SNO→(SN,AGE),DEPT→MN,则有(SNO,DEPT)→ (SN,AGE,MN)。
说明:扩张性实现了两函数依赖决定因素与被决定 因素的分别合并作用。
(3) 合并性 若X→Y且X→Z则必有X→(Y,Z)。例如,在关系 SDC 中 , SNO→ ( SN , AGE ) , SNO→DEPT , 则 有 SNO→ (SN,AGE,DEPT)。 说明:决定因素相同的两函数依赖被决定因素的可 以合并。
4.2.2 码
已知关系模式R(U,F),如何来找出R的所有候 选键呢?方法的步骤为: 1、查看函数依赖集F中的每个形如Xi→Yi的(i=1,……,n) 函数依赖关系。看哪些属性在所有Yi(i=1,……,n) 中 没 有 出 现 过 , 设 没 出 现 过 的 属 性 集 为 P ( P=U-Y1Y2……-Yn ) 。 则 当 P=φ ( 表 示 空 集 ) 时 , 转 4 ; 当 P≠φ时,转2。

数据库原理及应用第4章课后习题答案

数据库原理及应用第4章课后习题答案

习题61、说明数据库设计的特点。

1)三分技术,七分管理,十二分基础数据2)综合性3)结构(数据)设计和行为(处理)设计相结合2、试述数据库设计的过程3、试述数据库设计过程的各个阶段设计内容。

1)需求分析阶段需求分析是对用户提出的各种要求加以分析,对各种原始数据加以综合、整理,是形成最终设计目标的首要阶段。

需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。

2)概念结构设计阶段概念结构设计是对用户需求进行进一步抽象、归纳,并形成独立于DBMS和有关软、硬件的概念数据模型的设计过程。

3)逻辑结构设计阶段逻辑结构设计是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化的设计过程。

4)物理设计阶段数据库物理设计阶段,是将逻辑结构设计阶段所产生的逻辑数据模型,转换为某种计算机系统所支持的数据库物理结构的实现过程。

5)数据库实施阶段数据库实施阶段,即数据库调试、试运行阶段。

一旦数据库的物理结构形成,就可以用已选定的DBMS来定义、描述相应的数据库结构,装入数据库数据库,以生成完整的数据库,编制有关应用程序,进行联机调试并转入试运行,同时进行时间、空间等性能分析。

6)数据库运行和维护阶段数据库实施阶段结束,标志着数据库系统投入正常运行工作的开始。

在数据库系统运行过程中必须不断地对其进行评价、调整与修改。

4、需求分析中发现事实的方法有哪些?1)跟班作业。

通过亲身参加业务工作来观察和了解业务活动的情况。

2)开调查会。

通过与用户座谈来了解业务活动的情况及用户需求。

3)检查文档。

通过检查与当前系统有关的文档、表格、报告和文件等,进一步理解原系统,并有利于提供与原系统问题相关的业务信息。

4)问卷调查。

5、需求分析阶段的设计目标是什么?调查的内容是什么?需求分析阶段的目标是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,确定企业的组织目标,明确用户的各种需求,进而确定新系统的功能,并把这些要求写成用户和数据库设计者都能够接受的文档。

数据库课件第4章关系数据库(RDB)规范化设计理论

数据库课件第4章关系数据库(RDB)规范化设计理论


3. 完全函数依赖与部分函数依赖
完全函数依赖: 在关系模式R(U)中,如果X→Y,并且对于X的任何一 个真子集X′,都有X′ Y,则称Y完全函数依赖于X, 记作X f Y。 部分函数依赖: 若X→Y,但Y不完全函数依赖于X,则称Y部分函数依 p Y。 赖于X,记作X



例8: 学生(学号,姓名,所在系,系主任姓名,课程号,成绩) 学生关系模式存在的部分函数依赖: p (学号,课程号) 姓名 p 所在系 (学号,课程号) p (学号,课程号) 系主任姓名
教师姓 名
李林 78号
住址
课程号
C1
课程名
N1
李林
李林 汪佳 吴仪
78号
78号 59号 79号
C2
C3 C4 C5
N2
N3 N4 N5
师帆
76号
C6
N6

⑷当执行数据插入时,DB中的数据不能产生插入 异常现象 所谓“插入异常”是指希望插入的信息由于不 能满足数据完整性的某种要求而不能正常地被 插入到DB中的异常问题。 比如:上例中插入一个尚未安排授课的新进教师 信息. 原因: 因多种信息混合放在一个表中,可能造成因一 种信息被捆绑在其他信息上而产生的信息之间 相互依附存储的问题,使得信息不能独立插入。
第4章
关系数据库(RDB)规范化理论
4.1 关系模式规范化的必要性 4.2 数值依赖 4.3 范式与规范化 、关系分解原则






RDB规范化理论的目的是要设计“好的”RDB模式。要设计 好的关系模式,必须是关系满足一定的约束条件,此约束 形成了规范。 范式(Normal Form):衡量DB规范的层次或深度,DB规范化 层次由范式来决定。简记作NF. 根据关系模式满足的不同性质和规范化的程度,将关系模 式分为第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、 BC范式、第四范式(4NF)、第五范式(5NF),范式越高规范 化程度越高。 规范化:低级关系模式通过模式分解转换为若干高级范式 的关系模式集合的过程。 规范化是在RDB中减少数据冗余的过程。

第四章+数据库

第四章+数据库
Page 6
5. 数据库设计器的打开 命令格式: 命令格式 MODIFY DATABASE [<数据库名 ] 数据库名>] 数据库名 功能:在数据库打开的状态下,使用MODIFY 功能:在数据库打开的状态下,使用 DATABASE命令可以打开数据库设计器. 命令可以打开数据库设计器. 命令可以打开数据库设计器 若当前没有打开数据库,使用MODIFY 若当前没有打开数据库,使用 DATABASE <数据库名 可以打开数据库设计器 数据库名>可以打开数据库设计器 数据库名 可以打开数据库设计器; 若缺省数据库名,系统弹出"打开"对话框, 若缺省数据库名,系统弹出"打开"对话框,用 户可选择要打开的数据库. 户可选择要打开的数据库. 4.1.3 数据库表的基本操作
Page 10
(2)打开表的同时指定工作区的命令 ) 格式:USE <表名 IN <工作区 [ALIAS <别名 ] 表名> 工作区> 别名>] 格式 表名 工作区 别名 功能:在指定的工作区打开表,但不改变当前工作区, 功能 在指定的工作区打开表,但不改变当前工作区,若要改变工作 在指定的工作区打开表 区还需使用SELECT命令. 命令. 区还需使用 命令
一个数据表只能属于一个数据库, 一个数据表只能属于一个数据库,若想将表添加到其他 数据库中,必须先从当前数据库中移去该表. 数据库中,必须先从当前数据库中移去该表.
Page 7
4.2 多工作区操作 4.2.1 工 作 区 1. 基本概念 (1)工作区号 ) 工作区就是用来存放表的内存空间. 工作区就是用来存放表的内存空间.Visual FoxPro 6.0提供了 提供了32767个工作区,编号从 到 个工作区, 提供了 个工作区 编号从1到 32767. . 一个工作区同一时刻只可以打开一个表. 一个工作区同一时刻只可以打开一个表. 同一时刻一个表只能在一个工作区被打开 .

数据库原理与设计-第四章

数据库原理与设计-第四章

练习:
1、在关系R(R#,RN,S#)和S(S#,SN,SD)中,R的主键
是R#,S的主键是S#,则S#在R中称为 外键

2、用户选作元组元组标识的一个侯选键称为 主键

3、关系模式的任何属性( A )。
A、不可再分
B、可再分
C、命名在该关系模式中可以不惟一 D、以上都不是
4、一个关系数据库文件中的各条记录( B )
练习:
1、分别建立表dept1和emp1,并在二者之间定义关联。
表名
列名
数据约束
约束
DEPT1
Dno NAME
Decimal(3) VARCAHR(10)
PRIMARY KEY
LOC
VARCHAR(20)

表名 EMP1
列名 数据类型
Eno
Decimal(4)
NAME VARCHAR(10)
Salary Decimal(6,2)
Dno
Decimal(3)
约束
UNIQUE
FOREIGN KEY 级联删除
2、增加约束
(1)值唯一; (2)可有一个且仅有一个空值。
唯一约束既可以在列级定义,也可以在表 级定义。
【例4-4】示例。
(1)建立employee表,在employee表中定义一个phone字段, 并为phone字段定义指定名称的唯一约束。
CREATE TABLE employee ( empno DECIMAL(2) PRIMARY KEY, name VARCHAR(8), age DECIMAL(3), phone VARCHAR(12), deptno DECIMAL(2), CONSTRAINT emp_phone UNIQUE(phone) );

第4章数据库设计

第4章数据库设计

D,一个1:1联系可以转换为一个独立的关 系模式,也可以与任意一端对应的关系模 式合并.
转换为一个独立的关系模式:
关系的属性:与该联系相连的各实体的码以及联系
本身的属性
关系的候选码:每个实体的码均是该关系的候选码
与某一端对应的关系模式合并:
合并后关系的属性:加入对应关系的码和联系本身
的属性
合并后关系的码:不变
2.转换原则
A,一个实体型转换为一个关系模式.
关系的属性:实体型的属性 关系的码:实体型的码
例:学生实体可以转换为如下关系模式: 学生(学号,姓名,出生日期,所在系, 年级,平均成绩) 性别,宿舍,班级,档案材料,教师,课程, 教室,教科书都分别转换为一个关系模式.
B,一个m:n联系转换为一个关系模式.
例:"管理"联系为1:1联系,可以有三种转换方 法: (1)转换为一个独立的关系模式:
或 管理(职工号,班级号) 管理(职工号,班级号)
(2)"管理"联系与班级关系模式合并,则只需 在班级关系中加入教师关系的码,即职工号: 班级:(班级号,学生人数,职工号)
( 3)"管理"联系与教师关系模式合并, 则只需在教师关系中加入班级关系的码, 即班级号: 教师:(职工号,姓名,性别,职称,班 级号,是否为优秀班主任)
P58图4.3
4.2 需求分析
需求分析就是分析用户的需要与要求
需求分析是设计数据库的起点 需求分析的结果是否准确地反映用户的实际 要求,将直接影响到后面各个阶段的设计, 并影响到设计结果是否合理和实用
1.需求分析的任务
通过详细调查现实世界要处理的对象 (组织,部门,企业等),充分了解原系 统(手工系统或计算机系统)工作概况, 明确用户的各种需求 在此基础上确定新系统的功能.新系统 必须充分考虑今后可能的扩充和改变,不 能仅仅按当前应用需求来设计数据库

第4章 数据库的基本操作

第4章 数据库的基本操作

4.1.5

删除数据库

数据库的删除可以使用资源管理器来进行删除, 但由于仅删除数据库文件名并不能删除与它有 关的数据表,所以采用命令方式来删除可以比 较完全地进行数据库及其数据表的删除。 命令格式如下:
delete database 数据库名|? [deletetables]
4.2 数据表的操作
记录定位命令
定位要求 第一个 最后一个 下一个 上一个 含义 定位到第一条 定位到最后一条 从当前记录移到下一条 从当前记录移到上一条 命令 go top 说明 第一条并不是表头,即BOF()不 为.T.。
go bottom 最后一条并不是表尾,即EOF() 不为.T.。 skip <n> skip <n> go <n> n=1,为1时可缺省;n>1时可以 移动多条。 n=-1;n<-1时可以移动多条。 n表示记录号 locate定位第一条满足条件的记 录,continue与locate配合查找 满足条件的下一条记录。编程 常常使用到这两条命令
第4章 数据库的基本操作
4.1 4.2 4.3 4.4 创建数据库 数据表的操作 索引 视图
学习目标



理解数据库的概念; 掌握数据库设计器的用法; 掌握表设计器的用法; 熟练掌握数据表的基本操作; 掌握表达式生成器的用法; 理解索引的概念并掌握索引的使用; 理解并掌握表间关联关系使用; 理解视图的概念和创建步骤; 掌握利用视图更新数据。
copy struct to 表名 extended [fields <字段名表>]
其中,如果缺省extended,则是将当前表的空结构拷贝到“表名”所指定的 表文件。有了extended子句,则是将表的结构描述拷贝到“表名”所指定的 标结构描述文件。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库系统原理及MySQL应用教程(第2版)
课后习题参考答案
第4章数据库设计方法
1、1.)需求分析阶段
准确了解与分析用户需求(包括数据与处理),是整个设计过程的基础,是最困难、最耗费时间的一步。

2.)概念结构设计阶段
是整个数据库设计的关键,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。

3.)逻辑结构设计阶段
将概念结构转换为某个DBMS所支持的数据模型,对其进行优化。

4.)数据库物理设计阶段
为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。

5.)数据库实施阶段
运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果,建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。

6.)数据库运行和维护阶段
数据库应用系统经过试运行后即可投入正式运行。

在数据库系统运行过程中必须不断地对其进行评价、调整与修改。

2、需求分析阶段的设计目标是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。

调查的内容是“数据’夕和“处理”,即获得用户对数据库的如下要求:
( l)信息要求,指用户需要从数据库中获得信息的内容与性质,由信息要求
可以导出数据要求,即在数据库中需要存储哪些数据;
( 2)处理要求,指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理;
( 3)安全性与完整性要求
3、数据字典是系统中各类数据描述的集合。

数据字典的内容通常包括:数据项、数据结构、数据流、数据存储、处理过程五个部分。

其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。

数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。

数据字典的作用:数据字典是关于数据库中数据的描述,在需求分析阶段建立,是下一步进行概念设计的基础,并在数据库设计过程中不断修改、充实、完善。

4、(1)能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。

是对现实世界的一个真实模型。

(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。

(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。

(4)易于向关系、网状、层次等各种数据模型转换。

设计概念模型时常用的方法:ER方法
概念模型设计可分三步完成:
(1)、设计局部概念模型
(2)、设计全局概念模型,建立全局ER图
(3)、概念模型的评审
5、(1)属性不能再具有需要描述的性质
(2)属性不能与其他实体具有联系
6、关键是消除各局部E-R图中的冲突。

属性冲突的解决方法是与用户协商后解决
命名冲突解决方式是需要与各部门协商讨论后解决
结构冲突解决方法是根据应用语义对实体联系的类型进行综合或调整。

7、(1)初始关系模式
(2)关系模式规范化
(3) 模式的评价与改进
8、任务:确定数据库的物理结构,同时对其进行评价。

主要依据是需求和约束分析报告以及数据库的逻辑模式。

9、评价物理结构设计完全依赖于所选用的DBMS,主要是定量估算各种方案的存储空间、存储时间和维护代价入手,对估算结果进行权衡、比较,进而选出一个较优的合理的物理结构。

10、运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行
11、根据开发人员的反馈信息,必要的时候,修改数据库的结构。

登记数据库的用户,维护数据库的安全性。

保证数据库的使用符合知识产权相关法规。

控制和监控用户对数据库的存取访问。

监控和优化数据库的性能。

制定数据库备份计划,灾难出现时对数据库信息进行恢复。

维护适当介质上的存档或者备份数据。

备份和恢复数据库。

联系数据库系统的生产厂商,跟踪技术信息。

12、C 13 B 14 C 15 A 16 C 17 C 18 A 19 C 20 C 21 B 22 D 23
B 24 A 25 D 26
C 27
D 28 B 29 C 30 AC
31
(1)学生选课局部E-R图
(2)教师任课局部E-R图
(2)全局E-R图
(3)
全局E-R图转换为等价的关系模型表示的数据库逻辑结构教师(教师号,职称,姓名,性别,名称)
学生(学号,姓名,性别,年龄,名称)
课程(编号,课程名,名称)
单位(名称,电话)
讲授(教师号,编号)
选修(学号,编号)
32、(1)E-R图
(2)关系模式结构
借书人(借书证号,姓名,单位)
图书(书号,书名,数量,位置,出版社名)
出版社(出版社名,电报,电话,邮编,地址)
借阅(借书证号,书号,借书日期,还书日期)
33、(1)运动队局部E-R图,
运动会局部E-R图
(2)全局E-R图
(3)命名冲突:项名、项目名异名同义,统一命名为项目名。

结构冲突:项目在两个局部E-R图中,一个作属性,一个作实体,合并统一为实体.
34、
(1)
(2)关系模式:
商家(商家号,姓名,性别,年龄,通信地址)
玩具(玩具编号,名称,类型,价格,所剩数量,订单号)客户(客户号,姓名,性别,年龄,通信地址,电话)
订单(订单号,玩具编号,客户号,订购数量,商家号)订购(客户号,玩具编号)
(3)3NF
商家(商家号,姓名,性别,年龄,通信地址)
玩具1(玩具编号,名称,价格,所剩数量,订单号)
玩具2(玩具编号,类型)
客户(客户号,姓名,性别,年龄,通信地址,电话)
订单(订单号,客户号,订购数量,商家号)
订购(客户号,玩具编号)。

相关文档
最新文档