




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六E章valuat数ion据onl库y.设计ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.第六章数据库设计6.1
数据库设计概述6.2需求分析Evaluation
only.ed
wi6t.h3
A概sp念o结se构.S设li计des
for
.NET
3.5
Client
Profile逻Co辑p结yr构ig设ht计2004-2011
Aspose
Pty
Ltd.数据库的物理设计数据库实施数据库运行与维护小结6.1数据库设计的步骤(1)逻辑数据库设计-设计全局逻辑结构和每个用户
目前主要采用以逻辑数据库设计和物理数据库
设计为核心的规范设计方法。Evaluation
only.ed
with的A局sp部o逻se辑.S结li构d,es将f概or念.结NE构T转3.换5为Cl某ie个nt
ProfileDBMCS支op持yr的ig数h据t
2模0型04并-2优01化1
Aspose
Pty
Ltd.物理数据库设计-为逻辑数据模型选一个最适合应用环境的物理结构,设计数据库的存储结构、存取方法及其他实现细节6.1数据库设计的步骤(2)选定参加设计的人员:数据库分析设Ev计al人ua员ti-o核n心on,ly自.始至终ed
wi➢th用A户sp-o重se要.S,li需de求s
f分or析.(N头ET)3,.5运C行li和en维t
P护ro(f尾il)e程序Co员py-r编ig制ht程20序04-2011
Aspose
Pty
Ltd.操作员-准备软硬件环境数据库设计过程图需求分析计数据库实施数据库运行和维护数据库物理设计Evaluation
only.ed
with
A概s念p结o构s设e.逻S辑l结i构d设es计for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.需求分析任务
重点是调查、收集与分析用户在数据管理中的信息要E求va、lu处at理io要n
o求nl、y.安全性和ed
with完A整sp性os要e.求Slides
for
.NET
3.5
Client
Profile信息Co要py求ri-g用ht户20需04从-2库01中1
获As得po信se息Pt的y
内Lt容d.和性质,存储哪些信息于库中处理要求-要求完成的功能、响应时间、方式是批处理还是联机处理需求分析任务困难在:用户缺少计算Ev机al知ua识ti,on无o法nl准y.确表达自ed
with己A的sp需os求e.,Sl需id求es往fo往r不.N断ET变3化.5
Client
Profile设计Co人py员ri缺gh乏t
2用00户4-的20专11业A知sp识os,e
P不ty易L理td.解甚至误解用户的需求。软硬件技术的出现会使用户需求发生变化6.2需求分析6.2.2需求分析的方法(1)信息流程做准备调查各部门业务活动情况:输入和使用什么数协助用户明确对新系统的要求确定新系统边界,哪些是计算机完成的功能调查与初步分析用户需求需四步:调查组织机构情Ev况al:u部at门io组n成on、ly职.责,为分析ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile据,Co如p何yr加ig工ht处2理00这4些-2数01据1,As输p出os什e
么Pt信y
息Lt、d.到哪里、输出结果的格式6.2需求分析6.2.2需求分析的方法(2)常用的调查方法:跟班作业Evaluation
only.ed
wi➢th开A调sp查os会e.-S用li户de彼s
f此or启.发NET
3.5
Client
Profile请专Co人py介ri绍ght
2004-2011
Aspose
Pty
Ltd.询问-专人设计调查表请用户填写查阅记录-与原系统有关的数据记录6.2需求分析分析和表达用户需求的方法主要包括:自顶向下(SA)和自底向上方法自顶向下(SA)方法从最上层的系统组织机构入手,采用逐层分解的方式分析用SA方法做需求分析,设计人员需要把任何一个系统都抽象为如下形式Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile系统Co,py并ri用gh数t
2据00流4-图20和11数A据sp字os典e
描Pt述y
L系td.统数据存储Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCopyr数ig据h流t
2004-2数0据11流Aspose
Pty
Ltd.数据来源
处理
数据输出
然后将处理功能分解,不停分解,直至系统工作过程E被va表lu达at清io楚n
o;nl数y.据也逐级ed
with分A解sp,os形e.成Sl若id干es层fo次r的.N数ET据3流.5图Cl。ient
Profile数据Co流py图ri表gh达t
2了00数4-据20和11处A理sp过os程e
P的ty关L系td.数据借助数据字典描述处理过程的处理逻辑借助判定表或判定树来描述实例:开发学校管理系统学生管理子系统课程管理学籍管理高层数据流图管E理v信al息ua系ti统on
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile教师管理子Co系p统yright
2004-2011
Aspo后se勤P管t理y
子Lt系d统.实例(续)数据流图。见188-189
学生管理子系统的主要功能:学籍管理和课程管理。E包va括lu:at学io生n
o报nl到y.、入学、ed
with毕A业sp、os上e.课Sl情id况es管fo理r。.N通ET过3详.5细Cl的ie信nt息Profile流程Co分py析ri和gh数t
2据00收4-集20后11,A生sp成os该e
系Pt统y
L的td.6.3概念结构设计6.3.1概念结构设计方法与步骤
概念结构设计--将需求分析得到的用户需求抽象为概念模型的过程概念结构独立于数E据va库l逻ua辑t结io构n,o也nl独y立.于DBMSed
wi•th四A类s方po法s:e.Slides
for
.NET
3.5
Client
Profile自顶C向op下yright
2004-2011
Aspose
Pty
Ltd.自底向上—经常采用。即自顶向下进行需求分析,再自底向上设计概念结构。逐步扩张-先定义核心概念,然后向外扩充混合策略6.3.2分E-R图设计(1)一般作为分E-R图的依据
参照数据流图,标定局部应用中的实体、实体的属性、标识实体的码,确定实体
之间的联系及其类型。
在多层数据流图中选择一个适当层次的数据流图,让E每va一lu部at分io对n
o应nl一y.个局部应ed
with用A,sp因os为e.中Sl层id的es数fo据r流.N图ET能3较.5好Cl地ie反nt映Profile系统Co中py各ri局gh部t
2应00用4-的20子11系A统sp组os成e
,Pt所y
L以td.6.3.2设计分E-R图(2)
现实世界中一组具有共同特性和行为的对象可抽象为一个实体,例,张三、李斯、王五可抽象为学生实体Evaluation
only.ed
wi•th对A象sp的os组e成.S成li分de可s抽f象or为.实NE体T
的3.属5
性Cl,ie例nt,P学rofile号、Co姓p名yr、ig年ht级2等00可4抽-2象01为1学As生p实os体e
的Pt属y
性Lt,d.其中学号为标识实体的码
实体与属性很难划分界限。例,系是学生实体的属性,在需要考虑系主任、教师人数、学生人数、办公地点时就需要作为实体了。6.3.2设计分E-R图(3)属性和实体区别的原则:属性不能再具Ev有al需ua要ti描on述o的nl性y.质。即为ed
with不A可sp再os分e.的Sl数id据es项for
.NET
3.5
Client
Profile属性Co不py能ri与gh其t
2他00实4-体20具11有A联sp系os。e
P联ty系L只td.能发生在实体之间。能做属性对待尽量作属性。“职称”分别作为实体和属性教师住房姓名
性别
职称姓名
性别教师
评定
职称Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client分P配rofileCopyright
2004-2011
Aspose
Pty
Ltd.学籍管理分E-R图草图班主任
班级档案材料学生宿舍教室归档住宿指导
组成管理
上课Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.对学籍管理E-R草图调整
一般,性别应作为学生实体的属性,本应用中由于宿E舍va分lu配at与io性n
o别nl有y.关,依据ed
with准A则sp2o-s属e.性Sl不id能es与fo其r他.N实ET体3有.5联Cl系ie,nt性Profile别应Co作py为ri实gh体t
2对00待4-2011
Aspose
Pty
Ltd.数据存储“学生登记表”由手工完成,有用部分转入学生档案材料中,因此这里不必作为实体。学籍管理分E-R图草图调整后班主任
班级档案材料学生宿舍教室
归档住宿指导
组成管理
上课性别拥有Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.课程管理的E-R图教师教科书教室
开设
课程
选修
学生Evaluation
only.ed
with
Aspose.Slides
for
.NET
3成.5绩Client
ProfileCopyright
2004-讲2授011
Aspose
P教ty学Ltd.6.3.3E-R图的集成(1)
不同设计人员进行局部视图设计,这导
致各分E-R图之间存在许多不一致的地方,因此着力消除E冲va突lu是at主io要n
o工nl作y.与关键所ed
with在Aspose.Slides
for
.NET
3.5
Client
Profile1.属Co性py冲ri突gh-t讨20论04协-2商01解1
决Aspose
Pty
Ltd.属性域冲突:属性值的类型、取值范围、取值集合不同属性取值单位冲突6.3.3E-R图的集成(2)2.命名冲突-讨论协商解决同名异义异名同义Evaluation
only.ed
wi•th3.A结sp构o冲se突.Slides
for
.NET
3.5
Client
Profile同一Co对py象r在ig不ht同2应00用4-中2具01有1
不As同po的se抽P象t-y例Lt,d.“课程”在某一局部应用中当作实体,另一局部应用中当作属性解决办法:使同一对象有相同的抽象,遵守前面的属性原则6.3.3E-R图的集成(3)完全相同,或排列次序不完全相同计属性的次序实体间联系在不同视图中呈现不同类型解决办法:根据应用的语义对实体联系的类型进行综合或调整3.结构冲突同一实体在不Ev同alEu-aRt图io中n所on包ly含.的属性不ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile解决办Co法py:ri取gh分t
2E0-0R4图-2的01并1
A集sp,os再e
适Pt当y
L设td.学籍管理与课程管理E-R图的合并存在的冲突:1.班主任也属于教师,两图存在异名同义,统一为教师实体,属性构成为:2.班主任改为教师后,教室和学生之间的联系为两类,因为Evaluation
only.ed
wi教t师h
{A职sp工o号se,.姓Sl名i,de性s别f,or职.称N,ET优秀3.班5主C任li否e}nt
Profile“指C导op”y包ri含g在ht“2教0学04”-中20,1所1以A综sp合o为se教P学t联y
系Ltd.性别在学籍管理为实体,在课程管理中为属性,合并后只 能作为实体,否则无法与宿舍实体发生联系二者中学生实体属性组成及次序都存在差异,应将所有属 性综合并重新调整次序。6.3.3E-R图的修改与重构(1)修改与重构-消除不必要的冗余信息,生成基本E-R图Evaluation
only.ed
wi•th冗A余sp数os据e.-S可li由de基s
f本or数.据NE导T
3出.5
Client
Profile冗余Co的py实ri体gh间t
2联00系4-2可01由1
其As它po联se系Pt导y出Ltd.冗余信息易破坏数据库的完整性,给数据维护增加困难,但有时为了提高某些应用的效率不得不以冗余信息为代价。6.3.3E-R图的修改与重构(2)
消除冗余主要采用分析方法,例如教师工资单里的实发工资,可以推算•
教室实体与班级实体的上课联系可由教室与课程间的开设联系、课程与学生间的选修联系、学生与班级之间的组成联系推导出来,属于冗余联系
学生实体中平均成绩可由选修联系中的成绩属性推算,但经常查询,为维护数据一致性,应设置触发器消除冗余还可采用E规va范l化ua理t论ion
only.ed
wi例t,h
Aspose.Slides
for
.NET
3.5
Client
Profile学生C实op体y的ri年g龄ht可2由0生04日-推20算1,1
属As冗p余os数e据Pty
Ltd.整体概念结构(总E-RT图)必须验证整体概念结构内部必须具有一致性整体概念结构Ev能al准ua确ti反on映o原nl来y.的每个视ed
with图A结sp构ose.Slides
for
.NET
3.5
Client
Profile
整体Co概py念ri结gh构t
2能00满4-足20需11求A分sp析os阶e
P段ty所L确td.定的所有要求6.4逻辑结构设计逻辑结构设计的任务概念结构是各Ev种al数u据at模io型n
的on共ly同.基础ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile为Co了py能ri够g用ht某2一00D4B-M2S实01现1
用As户po需se求P,ty还L必td.须将概念结构进一步转化为相应的数据模型,这正是数据库逻辑结构设计所要完成的任务。6.4逻辑结构设计逻辑结构设计的步骤将概念结构转Ev化al为u一at般io的n
关on系ly、.网状、层次ed
withA模sp型ose.Slides
for
.NET
3.5
Client
Profile将Co转py化ri来g的ht关2系00、4-网20状1、1
层As次po模se型P向ty特L定td.DBMS支持下的数据模型转换对数据模型进行优化逻辑结构设计转化为转化为特据模型 支持下的优化模概念结 数据库基本E-R图转换规则特定
DBMS的特点与限制优化方法如规范化理论逻辑模型一般E数valua定tDBiMoS
n
only型.ed
wit构h设A计spose.Slides
fo据r模.型NET
3.5
Clien物t理P设r计ofileCopyright
2004-2011
Aspose
Pty
Ltd.6.4逻辑结构设计E-R图向关系模型的转换向特定DEBvMaSl规ua定ti的on模o型nl进y.行转换ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCo数py据ri模gh型t
2的00优4-化2011
Aspose
Pty
Ltd.设计用户子模式6.4.1
E-R图向关系模型的转换转换内容Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile转C换op原yr则ight
2004-2011
Aspose
Pty
Ltd.E-R图向关系模型的转换(续)转换内容E-R图由实体E、va实lu体a的ti属on性o和nl实y体.之间的联ed
with
A系sp三os个e要.S素li组de成s
for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.关系模型的逻辑结构是一组关系模式的集合
将E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转化为关系模式。E-R图向关系模型的转换(续)转换原则⒈一个实体型转换Ev为al一u个at关io系n模on式ly。.ed
with•A关sp系os的e.属S性li:de实s体fo型r的.N属E性T
3.5
Client
Profile关Co系py的ri码g:ht实2体00型4-的2码011
Aspose
Pty
Ltd.例,学生实体可以转换为如下关系模式:学生(学号,姓名,出生日期,所在系,年级,平均成绩)性别、宿舍、班级、档案材料、教师、课程、教室、教科书等实体都分别转换为一个关系模式。学生学号所在系 年级日期 成绩姓名Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCopyright
2出0出0生4-2011
Aspose
Pty
Lt平d均.E-R图向关系模型的转换(续)及联系本身的属性关系的码:各实体码的组合例,“选修”联系是一个m:n联系,可以将它转换为如下关系模式,其中学号与课程号为关系的组合码:选修(学号,课程号,成绩)⒉一个m:n联系转换为一个关系模式。关系的属性:Ev与al该uat联系io相n
连on的ly各.实体的码以ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.学生Evaluation
only.ed
with
Aspose.Sli选d修es
for
成.N绩ET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.课程学生的码为学号,课程的码为课程号,选修的属性为成绩E-R图向关系模型的转换(续)⒊一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。Evaluation
only.ed
with•A1s)p转os换e.为Sl一i个de独s
立fo的r
关.N系ET模3式.5
Client
ProfileC•o关py系ri的gh属t性20:0与4-该20联11系A相s连po的se各P实ty体L的td码.以及联系本身的属性关系的码:n端实体的码E-R图向关系模型的转换(续)⒊一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。2)与n端对应的关系模式合并关系的码和联系本身的属性合并后关系的码:不变
可以减少系统中的关系个数,一般情况下更倾向于采用这种方法Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileC•o合py并ri后gh关t系20的0属4-性20:11在Ans端p关os系e
中Pt加y
入Lt1d端.E-R图向关系模型的转换(续)例,“组成”联系为1:n联系。将其转换为关系E模va式lu的at两i种on方o法nl:y.ed
wi1t)h使A其sp成os为e.一S个li独de立s的fo关r系.N模E式T
3:.5
Client
Profile组Co成p(yr学ig号ht,2班00级4号-2)01(1见As下po页s)e
Pty
Ltd.2)将其与学生关系模式合并:学生(学号,姓名,出生日期,所在系,年级,班级号,平均成绩)班级Ev1aluation
only.ed
with
Aspose.Sli组d成es
for
.NET
3.5
Client
ProfileCopyright
20n04-2011
Aspose
Pty
Ltd.学生学生的码为学号,班级的码为班级号,选修的属性为成绩E-R图向关系模型的转换(续)⒋一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。1)转换为一个独立的关系模式Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileC•op关y系ri的gh属t性20:04与-该20联11系A相sp连os的e各Pt实y体L的td码.以及联系本身的属性
关系的候选码:每个实体的码均是该关系的候选码E-R图向关系模型的转换(续)⒋一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。Evaluation
only.ed
with•A2s)p与os某e.一Sl端i对de应s
的fo关r
系.N模ET式3合.5并Client
ProfileC•o合py并ri后gh关t系20的0属4-性20:11加A入s对po应se关P系ty的L码td和.联系本身的属性合并后关系的码:不变E-R图向关系模型的转换(续)例,“管理”联系为1:1联系,可以有三种转换方法:转换为一个独立的关系模式:管理(职E工v号al,u班at级i号on)only.ed
wi或th
Aspos管e理.S(l职id工e号s
,fo班r级.号NE)T
3.5
Client
Profile“C管op理y”ri联gh系t
与20班04级-关20系11模A式sp合os并e,Pt则y只Lt需d在.班级关系中加入教师关系的码,即职工号:班级(班级号,学生人数,职工号)“管理”联系与教师关系模式合并,则只需在教师关系中加入班级关系的码,即班级号:教师(职工号,姓名,性别,职称,班级号,是否为优秀班主任)E-R图向关系模型的转换(续)注意:u从理论上讲,1:1联系可以与任意一端对应的关系模式合并。依应用的具体情况而定。u由于连接操作是最费时的操作,所以一般应以尽量减少连接操作为目标。例如,如果经常要查询某个班级的班主任姓名,则将管理联系与教师关系合并更好些。Evaluation
only.eduw但it在h
一As些po情s况e.下Sl,id与e不s
f同o的r.关N系ET模3式.5合C并li效en率t会Pr大ofile不一样C。op因yr此i究gh竟t
应20该04与-2哪0端11的A关sp系os模e式Pt合y并Lt需d要.E-R图向关系模型的转换(续)⒌三个或三个以上实体间的一个多元联系转换为一个关系模式。:与该多元联系相连的各实体的关系的码:各实体码的组合例,“讲授”联系是一个三元联系,可以将它转换为如下关系模式,其中课程号、职工号和书号为关系的组合码:讲授(课程号,职工号,书号)关系的属性Evaluation
only.ed
with
A码sp以os及e联.S系li本de身s的f属or性.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.E-R图向关系模型的转换(续)例,如果教师实体集内部存在领导与被领导的教师:{职工号,姓名,性别,职称,系主任}⒍同一实体集的实体间的联系,即自联系,也可按上述1:1、1:n和m:n三种情况分别处理。Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile1:nC自o联py系ri,gh我t们20可0以4-将20该11联A系sp与o教se师P实ty体L合td.并,这时主码职工号将多次出现,但作用不同,可用不同的属性名加以区分:E-R图向关系模型的转换(续)合并方法:将其中一个关系模式的全部属性⒎具有相同码的关系模式可合并。目的:减少系Ev统al中u的at关io系n
个on数ly。.ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile加Co入py到r另ig一ht个2关00系4-模2式01中1
,As然po后s去e
P掉t其y
L中t的d.同义属性(可能同名也可能不同名),并适当调整属性的次序。E-R图向关系模型的转换(续)例,“拥有”关系模式:拥有(学号,性别)与学生关系模式:Evaluation
only.ed
with
As学p生os(e学.S号l,id姓e名s
,fo出r生.日NE期T,3所.5在C系l,ie年n级t
,Profile
Copyri班g级ht号2,0平04均-成20绩1)1
Aspose
Pty
Ltd.都以学号为码,可以将它们合并为一个关系模式:学生(学号,姓名,性别,出生日期,所在系,年级,班级号,平均成绩)E-R图向关系模型的转换(续)实例
按照上述七条原则,学生管理子系统中的18个实体和联系可以转E换v为al下ua列ti关o系n
o模n型ly:.ed
wit学h生As(po学s号e.,Sl姓id名e,s
f性o别r.,N出ET生3日.5期C,li所en在t系Pr,ofile
Cop年yr级i,gh班t
级20号04,-平20均11成A绩sp,os档e案Pt号y)Ltd.性别(性别,宿舍楼)宿舍(宿舍编号,地址,性别,人数)班级(班级号,学生人数)教师(职工号,姓名,性别,职称,班级号,是否为优秀班主任)E-R图向关系模型的转换(续)教室(教室编号,地址,容量)讲授(课程号,教师号,书号)档案材料(档案号,……)教学(职工号,学号)课程(课程号Ev,a课lu程at名io,n学o分nl,y.教室号)ed
with
A选sp修o(se学.S号li,d课es程f号or,.成NE绩T
)3.5
Client
Profile教Co科p书yr(ig书ht号2,00书4名-2,01价1钱As)pose
Pty
Ltd.E-R图向关系模型的转换(续)式;
宿舍关系模式包含了“住宿”联系所对应的关系模式;
课程关系模式包含了“开设”联系所对应的关系模式。该关系模型由12个关系模式组成。其中:学生关系模式包Ev含a了lu“a拥ti有o”n
联on系l、y.“组成”联系、ed
with
A“sp归o档se”.联Sl系i所de对s应f的o关r
系.N模E式T
3.5
Client
Profile教Co师p关yr系i模gh式t包2含00了4“-2管0理11”A联s系po所s对e应Pt的y关L系td模.6.4逻辑结构设计E-R图向关系模型的转换向特定DEBvMaSl规ua定ti的on模o型nl进y.行转换ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCo数py据ri模gh型t
2的00优4-化2011
Aspose
Pty
Ltd.设计用户子模式6.4.2
向特定DBMS规定的模型进行转换转换的主要依据是所选用的DBMS的功能及限制。没有通用规则。
对于关系模型来说,这种转换通常都比较简单。
一般的数据模型还需要向特定DBMS规定的模型进行E转va换lu。ation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.6.4逻辑结构设计6.4.1
E-R图向关系模型的转换6.4.2向特定DBMS规定的模型进行转换Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile6.4.3Co数py据ri模gh型t
2的00优4-化2011
Aspose
Pty
Ltd.6.4.4设计用户子模式6.4.3数据模型的优化数据库逻辑设计的结果不是唯一的。得到初步数据Ev模al型ua后ti,on还o应nl该y.适当地修ed
with改A、sp调os整e.数Sl据id模es型fo的r结.N构ET,3以.5进Cl一ie步nt提Profile高数Co据py库ri应gh用t
2系00统4-的20性11能A,sp这os就e
是Pt数y
L据td.模型的优化。
关系数据模型的优化通常以规范化理论为指导。数据模型的优化(续)优化数据模型的方法Evaluation
only.ed
wi⒈th确A定sp数os据e.依S赖lides
for
.NET
3.5
Client
ProfileC按op需yr求ig分h析t
2阶0段04所-2得01到1的As语p义os,e
分Pt别y
写Lt出d.每个关系模式内部各属性之间的数据依赖以及不同关系模式属性之间数据依赖。数据模型的优化(续)例,课程关系模式内部存在下列数据依赖:课程号→课程名课程号→学分Evaluation
only.ed
with
Aspose.S课li程d号es→f教or室.号NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.选修关系模式中存在下列数据依赖:(学号,课程号)→成绩数据模型的优化(续)学生关系模式中存在下列数据依赖:学号→姓名学号→性别Evaluation
only.ed
with
Asp学o号se→.S出li生d日es期for
.NET
3.5
Client
ProfileCo学p号yr→ig所ht在2系004-2011
Aspose
Pty
Ltd.学号→年级学号→班级号学号→平均成绩学号→档案号数据模型的优化(续)学生关系模式的学号与选修关系模式的学号之间存在数据依赖E:valuation
only.ed
with
As学po生s.e学.S号li→d选es修f.o学r
号.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.数据模型的优化(续)⒉对于各个关系模式之间的数据依赖进行极小化Evaluation
only.ed
with
处As理po,se消.除Sl冗id余es的f联or系.。NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.数据模型的优化(续)例如经过分析可知,课程关系模式属于BC范式。⒊按照数据依赖的理论对关系模式逐一进行分析,考查是否存在E部va分lu函a数ti依on赖o、nl传y.递函数依赖、ed
with
多As值po依se赖.等Sl,id确es定f各or关.系NE模T式3.分5别C属li于en第t几Profile范C式op。yright
2004-2011
Aspose
Pty
Ltd.数据模型的优化(续)⒋按照需求分析阶段得到的各种应用对数据处理的要求,分析E对va于lu这a样ti的on应o用nl环y.境这些模式ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile是C否op合yr适i,gh确t
定20是04否-2要0对11它A们sp进os行e合Pt并y或Lt分d.解。数据模型的优化(续)并不是规范化程度越高的关系就越优。当一个应用的查询中经常涉及到两个或多个关系模式的属性时,系统必须经常Evaluation
only.ed
with
Asp地os进e.行S联li接de运s算fo,r而.N联ET系3运.算5
C的l代ie价nt是ProfileCo相py当ri高g的ht,2可00以4-说20关1系1
A模s型po低se效P的ty主L要td.原因就是做联接运算引起的,因此在这种情况下,第二范式甚至第一范式也许是最好的。数据模型的优化(续)非BCNF的关系模式虽然从理论上分析会存在不同程度的更新异常,但如果在实际应用中对此关系模式只是查询,并
对于一个具体应用来说,到底规范化进行到什么程度,需要权衡响应时间和潜
在问题两者的利弊才能决定。一般说来,第三范式就足够了。Evaluation
only.ed
with
Asp不os执e行.S更li新de操s作f,or则.就NE不T
会3.产5
生Cl实ie际nt影ProfileCo响py。right
2004-2011
Aspose
Pty
Ltd.数据模型的优化(续)例:在关系模式学生成绩单E(v学a号lu,a英ti语on,数on学l,y语.文,平均成绩)ed
wi中th存A在sp下o列se函.S数li依d赖es:for
.NET
3.5
Client
ProfileC学op号yr→ig英h语t
2004-2011
Aspose
Pty
Ltd.学号→数学学号→语文学号→平均成绩(英语,数学,语文)→平均成绩数据模型的优化(续)显然有:学号→(英语,数学,语文)Evaluation
only.ed
with
因As此po该se关.系Sl模id式es中f存or在.传NE递T函3数.5信C赖li,en是t
Profile2NCFo关py系r。ight
2004-2011
Aspose
Pty
Ltd.虽然平均成绩可以由其他属性推算出来,但如果应用中需要经常查询学生的平均成绩,为提高效率,我们仍然可保留该冗余数据,对关系模式不再做进一步分解。数据模型的优化(续)⒌按照需求分析阶段得到的各种应用对数据处理的要求,对关E系va模lu式a进ti行on必o要nl的y.分解或合并,ed
with
以As提po高se数.据Sl操id作es的f效or率.和NE存T储3.空5间C的li利en用t率ProfileCo常p用yr分ig解ht方2法004-2011
Aspose
Pty
Ltd.水平分解垂直分解数据模型的优化(续)定义每个子集合为一个子关系,以提水平分解什么是水平Ev分al解uation
only.ed
with
Aspo•se把.(S基li本de)s关f系or的.元N组ET分3为.5若C干li子en集t合Pr,ofileCopy高ri系gh统t的20效04率-。2011
Aspose
Pty
Ltd.数据模型的优化(续)水平分解的适用范围1.满足E“va80l/u2a0t原io则n”o的nl应y.用ed
with
Aspos•e.8S0/l2i0d原es则f:or一.个NE大T关3.系5中Cl,i经en常t
被Pr使ofileCopyri用g的ht数2据00只4-是20关1系1
的As一po部se分P,ty约L2t0d%.把经常使用的数据分解出来,形成一个子关系,可以减少查询的数据量。数据模型的优化(续)水平分解的适用范围2.并发事务经常存取不相交的数据Evaluation
only.ed
with
Aspos•e如.S果li关de系sRf上or具.有NnE个T
3事.务5
,Cl而ie且nt多ProfileCopyr数ig事ht务2存00取4的-2数01据1不As相po交s,e
P则tRy可Ltd.分解为少于或等于n个子关系,使每个事务存取的数据对应一个关系。数据模型的优化(续)水平分解什么是水平分解把(基本)关系的元组分为若干子集合,Evaluation
only.ed
with
Aspos定e义.S每li个de子s集fo合r为.N一E个T
子3.关5
系Cl,ie以nt提ProfileCopy高r系ig统ht的2效00率4-。2011
Aspose
Pty
Ltd.水平分解的适用范围满足“80/20原则”的应用并发事务经常存取不相交的数据数据模型的优化(续)满足“80/20原则”的应用80/20原则:一个大关系中,经常被使用的数据只是关系E的v一al部u分at,i约on20o%nly.ed
with
As•p把os经e常.S使l用id的e数s
据fo分r解.出NE来T,3形.5成C一l个ie子n关t
Profile系,可以减少查询的数据量。并Co发p事yr务i经gh常t存2取00不4相-2交0的11数A据spose
Pty
Ltd.
如果关系R上具有n个事务,而且多数事务存取的数据不相交,则R可分解为少于或等于n个子关系,使每个事务存取的数据对应一个关系。数据模型的优化(续)垂直分解什么是垂直E分va解luation
only.ed
with
Aspos•e把.关Sl系i模de式sRf的o属r性.N分E解T为3.若5干C子li集e合nt,形ProfileCopyr成i若gh干t子2关00系4模-2式0。11
Aspose
Pty
Ltd.垂直分解的原则
经常在一起使用的属性从R中分解出来形成一个子关系模式。数据模型的优化(续)垂直分解的优点可以提E高va某lu些a事ti务on的o效nl率y.ed
with
As•p垂os直e.分Sl解i的de缺s
点for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.可能使另一些事务不得不执行连接操作,从而降低了效率。数据模型的优化(续)垂直分解的适用范围
取决于分解后R上的所有事务的总效率是否得到了E提va高lu。ation
only.ed
with
•As进po行s垂e.直Sl分id解e的s
f方o法r
.NET
3.5
Client
ProfileCo•p简yr单ig情h况t
2:0直04观-2分01解1
Aspose
Pty
Ltd.复杂情况:用第五章中的模式分解算法
垂直分解必须不损失关系模式的语义(保持无损连接性和保持函数依赖)。5.4逻辑结构设计5.4.1
E-R图向关系模型的转换5.4.2向特定DBMS规定的模型进行转换Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile5.4.3Co数py据ri模gh型t
2的00优4-化2011
Aspose
Pty
Ltd.5.4.4设计用户子模式5.4.4设计用户子模式定义用户外模式时应该更注重考虑用户的习惯
定义数据库模式主要是从系统的时间效率、空间效率、易维护等角度出发。Evaluation
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
Profile与方Co便p。yr包ig括ht三2个00方4面-2:011
Aspose
Pty
Ltd.设计用户子模式(续)以使数据库系统中同一关系和属性具有唯一使用更符合用户习惯的别名合并各分E-RE图va曾lu做a了ti消on除o命nl名y.冲突的工作,ed
with
A的sp名os字e。.S这li在de设s计fo数r据.库NE整T
体3.结5
构Cl时ie是nt非P常rofile必Co要py的r。ight
2004-2011
Aspose
Pty
Ltd.
但对于某些局部应用,由于改用了不符合用户习惯的属性名,可能会使他们感到不方便,设计用户子模式(续)使用更符合用户习惯的别名(续)因此在设计用Ev户al的u子at模io式n
时on可ly以.重新定义某ed
with
A些sp属os性e名.S,li使de其s与fo用r户.习NE惯T
一3.致5
。Client
Profile
当Co然py,ri为g了ht应2用00的4-规20范1化1
,As我po们se也P不ty应L该td一.味地迁就用户。例:负责学籍管理的用户习惯于称教师模式的职工号为教师编号。因此可以定义视图,在视图中职工号重定义为教师编号设计用户子模式(续)(2)针对不同级别的用户定义不同的外模式,以满足系统对安全E性va的lu要at求i。on
only.ed
with
Aspose.Slides
for
.NET
3.5
Client
ProfileCopyright
2004-2011
Aspose
Pty
Ltd.设计用户子模式(续)例:教师关系模式中包括职工号、姓名、性别、出生日期、婚姻状况、E学v历al、ua学ti位o、n
o政n治ly面.貌、职称、职ed
wit务h、As工po资s、e.工Sl龄id、e教s
f学o效r
果.N等
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新能源汽车租赁市场区域分布研究报告:2025年项目布局建议书
- 2025年动漫产业链协同创新与产业链协同机制研究
- 基于2025年电动汽车电池热管理技术的整车能耗降低策略报告
- 机电工程2025年编程语言试题及答案
- 全球汽车零部件制造行业供应链重构下的产业协同效应研究报告
- 追求卓越2025年信息管理师试题及答案
- 农村电商服务站农村电商人才培养与选拔报告
- 西方政治文化的演变试题及答案
- 软件设计师考试成功案例研究及答案
- 网络连接方式的选择试题及答案
- 非营运车标转让协议书
- 福建百校联考2025届高三5月高考押题卷-化学试卷(含答案)
- 2025年瑜伽教练认证考试体式教学与课程设计模拟试题集(含答案详解)
- 2025-2030中国养老服务行业发展分析及发展前景与趋势预测研究报告
- 2025《学前教育法》宣传月培训含讲稿
- 招聘社工考试试题及答案
- 护理三基三严培训课件
- 2025年湖北省新能源有限公司社会招聘24人笔试参考题库附带答案详解
- 砖和砌块材料试题及答案
- TCCEAS001-2022建设项目工程总承包计价规范
- 职业教育现场工程师联合培养协议书10篇
评论
0/150
提交评论