




免费预览已结束,剩余90页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,设计包含两方面:,1)结构设计:概念结构逻辑结构物理结构,2)行为设计:应用程序、事务处理等,结构设计与行为设计是相互影响的。(软工与数据库),2,核心是:逻辑结构设计与存储结构的设计,2.1.2数据库系统设计方法,运用软件工程的思想与方法,根据数据库设计的特点,提出了各种准则与设计规程。,3,数据库系统设计步骤:,2.概念结构设计以某种形式表述的信息结构与DBMS无关可与用户交流简明避免设计出错通常:E-R模型,1.需求分析对现实世界中的应用问题进行分析整理,4,全局逻辑结构局部逻辑结构含数据约束,通常:一组关系模式基本表视图,根据具体DBMS使用的数据模型进行设计与计算机软硬件相关专业人员进行应用程序设计的依据,3.逻辑结构设计,5,4.数据库物理设计存储结构方面的设计数据、索引、日志、备份的存储位置、存储结构、相应的系统配置。,6.数据库系统的运行与维护,5.数据库系统的实现(实施)创建数据库对象编程.,6,按用户观点按机器观点现实世界概念模型数据模型事物及联系抽象信息模型抽象(机器世界)(信息世界),2.2数据模型,7,2.2.1数据模型三要素,数据模型:描述系统的静态特性(数据结构)、动态特性(数据操纵)和完整性约束条件。,术语:数据模型与概念模型,8,(1)数据结构(静态):对事物性质的描述以及事物之间联系的描述。,数据模型三要素:,如:记录型、数据项、类型、宽度;网状模型中的系型;关系模型中基本表的定义。,9,(2)数据操纵(动态):对数据库中数据允许执行的操纵的集合及规则。操纵:1.查询2.更新:增、删、改,(3)数据的完整性约束:保证数据的正确有效。,10,2.2.2一些主要的数据模型(一)数据库发展史上两种有影响的数据模型有关概念:基本层次联系:两个记录型Ri、Rj具有一对多(包括一对一)联系Lij。称Lij为基本层次联系,称Ri为双亲记录,称Rj为子女记录。例:双亲记录子女记录-学院学科部学生学生成绩,11,层次模型定义:满足下述两个条件的“基本层次联系”的集合1)具有且仅有一个结点无双亲(该节点为树根)2)其它结点有且仅有一个双亲例1:工厂科室车间树结构班组子女唯一双亲,12,*多对多联系在层次模型中的表示例:学生S与课程Cm:n法1:冗余结点法SSNOSNAMESEXCCNOCNAMECCNOCNAMESSNOSNAMESEX法2:虚拟结点法(用指引元指向被替代的结点)SSNOSNAMESEXCCNOCNAMECV.CSV.S,13,*层次模型的数据操纵及完整性约束数据操纵:查询、增、删、改。完整性约束:没双亲不能插入子女子女与双亲同时删除更新所有相应记录(冗余结点),14,*层次模型的存储结构a.邻接法D02R01T0101T0102T0103R02T0201T0202R03S980232S980125S980126b.链接法层次序列链接法子女兄弟指引元法(两种指针),15,*层次模型的优点与缺点优点:#模型简单易操纵#实体间联系固定,预先定义好的应用系统性能优#提供了较好的完整性支持缺点:#应用为非树形结构时,使用不便#存取必须按照定义好的存取路径进行#逻辑独立性不高,16,2.网状模型定义:满足下述条件的“基本层次联系”的集合1)允许有一个以上结点无双亲2)至少有一个结点有一个以上的双亲或有一个以上的与双亲的联系,17,例:供应商零件两个基本层次两个结点无双亲联系(set)供应关系描述m:n有两个双亲结点工人使用维修有两个与双亲的联系设备,18,*DBTG系统:a.数据结构:数据项、记录、系(set)系:二级树A首记录型1:NB属记录型系型(一个)系值SSNOSNAMESEXS980122陈一男S-SCC01S980122AC02S980122BC03S980122BSCCNOSNOGRADE,19,b.数据操纵查询、增、删、改。查询有多种方法存取机制:入口点、导航、DBK直接存取DML:(略),20,c.完整性约束:可插入无双亲的子女可只删除双亲维护时无须考虑冗余节点的处理也可以:不插入无双亲的子女删除双亲删子女,21,d.系的存储结构单向链双向链环状链向首链(带有指向首记录的指针),22,*网状模型的优点与缺点便于描述多对多联系(多个一对多)存取时沿存取路径、顾及各个范围(系、记录)的当前值,繁琐。逻辑独立性不高,23,(二)关系模型,关系:命名的二维表元组:表中一行属性:表中一列,列名称属性名关系模式:关系名(属性名1,属性名2属性n),1.数据结构用一组表来表示事物及事物间的联系,24,例:供应商Suppliers(Sno,Sname,State,City)零件Parts(Pno,Pname,Size,Color)Parts供应商与零件SP(Sno,Pno,Quantity),两个实体集多对多关系必须是规范化的元组分量不可再分不规范:表中有表,25,实体完整性参照完整性(引用完整性)用户定义完整性,2.关系模型的操纵与完整性约束,查询、增、删、改,26,3.关系模型的存储结构实体集表数据文件联系,27,4.关系模型的优点:1)描述的一致性实体集与联系均用关系描述,例:Employees(Eno,Ename,Eaddr,Dno)职工与部门n:1Departments(Dno,Dname,Manager)术语:关系联系,28,2)操作由一张或N张表一张新表即原始数据与结果数据都是二维表。,关系模型概念简单易学易用且有严格数学基础,29,3)可直接描述多对多联系例:Suppliers(Sno,Sname,State,City)供应商实体集关系SuppliersParts(Pno,Pname,Size,Color)零件实体集关系PartsSP(Sno,Pno,Quantity)供应商与零件联系关系SP,4)存储路径透明,30,5.关系模型的缺点存取路径透明查询优化问题对新的需求难以适应,(三)其他数据模型面向对象模型对象关系模型,31,2.3概念模型按用户观点按机器观点现实世界概念模型数据模型事物及联系抽象信息模型抽象(机器世界)(信息世界),32,2.3.1概念模型的基本概念,1.实体(Entity):一个具体或抽象的事物可区分的例如:一个学生、一个帐户、一张支票、一份合同。,33,2.属性(Attribute):事物某方面的特性例如:学号、姓名、年龄,3.域(Domain):属性的取值范围例如:年龄在15-35之间,34,4.实体、实体集:实体型即类型,由实体名及属性名表示。同型实体具有共同的性质,因此,用相同属性描述。实体型:学生(学号,姓名,年龄),实体集:同型实体的集合如:全体学生书上实体集:包含实体型的概念,实体:张三(02070011,张三,20),35,5.实体集之间的联系按联系中实体集的数目分:,二元联系:两个实体集之间的联系多元联系:三个或多于三个实体集之间的联系一元递归:一个实体集内部的联系,36,(一)二元联系,一对一联系一对多联系多对多联系,二元联系按实体集间实体的映射可分为:,37,1)一对一联系(例:班级与班长)实体集1中的每一个实体,在实体集2中至多有一个实体与之联系,反之亦然。,班级,班长,38,2)一对多联系(例:班级与学生)实体集1中的每一个实体,在实体集2中有n个(n=0)实体与之联系;实体集2中的每一个实体,在实体集1中至多有一个实体与之联系。,班级,学生,39,3)多对多联系(例:学生与课程)实体集1中的每一个实体,在实体集2中n个(n=0)实体与之联系;反之亦然。,学生,课程,40,(二)多元联系多路联系参与联系的实体集个数大于二角色,例1:学生教师课程三者之间的“教学”联系一个学生选一门课程、可以对应多位老师一位老师教一门课程、可以对应许多学生一个学生听一位老师的课、可以对应不同的课程这是三者之间的多对多联系多元联系中的“多”,41,例2:影星、影片与制片厂的联系一位影星因一部影片与一个制片厂签约一个制片厂因一部影片与若干影星签约一个制片厂、一个影星因不同的影片多次签约,多元联系中的“一”与“多”,42,(三)一元递归联系实体集内部,不同实体之间的联系,例:公司内每一成员都是员工同属于员工这一实体集但:总经理管理部门经理部门经理管理普通员工员工实体集内部的“管理”联系是一个一元递归联系这里是一个一对多联系也有多对多,43,EEntity实体RRelationship联系,2.3.2E/R模型表示法E/R模型是一种图形方法E/R图,44,1.实体集:2.联系:,学生,一对一,多对一,多对多,45,3.多元联系:,三元联系是因为“供应”活动涉及三个实体集这里,三者之间是多对多的联系,46,这里,“签约”活动涉及三个实体集,是三元联系多个影星多个影片对应一个制片公司*影片决定制片公司,E/R模型无法表明,属“函数依赖”范畴,47,4.角色:,在同一个联系中,一个实体集在联系中可能出现一次以上,将实体集在联系中的角色,用文字标在与联系的连线上,一元递归,48,5.实体集的属性、联系的属性:,49,例:(P75图4-2)电影数据库需要存储影片的片名、年份、片长、体裁;影星的名字、地址;制片公司的名称、地址。一个制片公司可以拍摄多部电影;每一部电影只属于一个制片公司。每一部影片有多位影星参加摄制;每一位影星可以拍摄多部影片。设计E-R图,2.3.3几个例子,50,51,设计E-R图,例:数据库存放影星与制片公司签约的有关信息,需要存储影片的片名、年份、片长、体裁;影星的名字、地址;制片公司的名称、地址。,以及每一位影星与每一个制片公司签约出演每一部影片的薪水。,一个制片公司可与多位影星签约一部影片;一个影星签约一部电影,对应唯一的制片公司;一个制片公司与一位影星,可以签约多部电影,52,方案1:P78图4-7,53,方案2:P79图4-8(不好),这是为了消除联系的属性而给出的替代方案.当实体只有作为标识的唯一属性时,此法不可取,54,例:库存管理:涉及管理员、仓库、零件及库存信息。每一仓库若干管理员;每一管理员只在一个仓库工作;每一个仓库的管理员中有一个负责人。每一种零件存放于若干仓库;每一仓库存放若干种零件。,管理员:编号、姓名、年龄仓库:编号、面积、地址、电话零件:编号、名称、规格每一仓库中每一种零件的数量,55,n,职工,简单起见,这里实体集的属性没有画出有时将实体联系与实体属性分开画,56,2.3.4多元(路)联系转换为二元联系例:(P79图4-9)“签约”涉及两个制片公司,一个影星和一个影片含义是:一个是影星所属制片公司(另外签有长期合同)一个是拍摄该影片的制片公司,给定影星、电影和制作公司对应唯一的影星所属公司给定影星、电影和所属公司对应唯一的制作公司给定两个公司和电影可以对应多位影星给定两个公司和影星可以对应多部影片,57,多路联系,P77图4-6,既包含多个实体集,又包含具有多重角色的实体集,58,P79图4-9转换为多个二元联系,(公司1,公司2,影星,片),一个合同一个影星一个影星多个合同,弱实体,59,问题的提出:大学里,学生分为本科生、研究生本科生的有关信息是学号、姓名、年龄、班级研究生的有关信息是学号、姓名、年龄、导师、方向,2.3.5E/R图中的子类,60,本科生(B01070302,柳力,19,010703)(B01070529,杜慧,20,010705).研究生(Y01070001,张一,23,陈青,多媒体)(Y01070004,王二,22,张易,人工智能).,61,学生不论本科生研究生均可:选课、参加学生社团关心:学生选课情况、学生与社团之间的“参加”联系,研究生参与学术活动,本科生不参与关心:研究生与学术活动的“参与”联系,62,不同的实体集有若干共同的属性和与其他实体集的联系,各自又有若干特殊的属性和与别的实体集的联系。,本科生或研究生是学生的子类,或者说属于“学生”类(isa),超类:共同点-“学生”子类:特殊性-“本科生”“研究生”,63,用这一特殊联系表示“子类”,下图C是D的子类,isa,D和C共有的属性,D独有的属性,64,65,例:一般影片存储片名、片长、年份、体裁等信息凶杀片另加一个“武器”的信息卡通片另加一个“配音”联系,影片-超类凶杀片-子类(有特殊的属性)卡通片-子类(有特殊的联系),66,影片,isa,isa,卡通片,凶杀片,年份,片名,武器,配音,片长,体裁,67,E/R模型中的继承:认为“研究生”具有“学生”中通用的属性也具有“研究生”特殊的属性既有“学生”的联系“选课”等又有“研究生”与学术活动的特殊的联系“参与”,卡通片.+“配音”这一联系凶杀片.+“武器”这一属性,68,对于卡通凶杀片无须引入新子类认为有这样的实体它拥有影片、卡通片及凶杀片的属性如果想知道配音演员的信息,可通过“配音”联系去找;如果想知道使用的武器,可从凶杀片信息中找,69,2.3.6设计原则P82-851)真实性,联系:多对多?一对多?.与应用背景有关影星与电影课程与教师人与车,属性:与实体集(型)有关与应用系统有关影星-私人汽车的汽缸数,70,2)避免冗余任何冗余,导致潜在的不一致,空间的浪费,71,3)避免引入过多的元素P23,72,P84图4-12,73,4)选择适当的元素类型问题之一:属性?实体集?,如果某个事物除了标识(如:编号,名称)之外没有其他的属性,那么作属性更合适;否则,作为实体集更合适。,74,制片公司作为实体集,75,制片公司的名称和地址作为电影的属性同一公司的多部影片重复相同内容,76,只需存储制片公司的名称,制片公司的名称作为电影的属性,是必要的冗余,77,类似的情况:只关心职工所在部门,不关心部门其他情况-部门作为职工的属性即可否则,部门应作为实体出现,实体集是需要由若干属性来描述的特例:仅单一属性但作为集合与其他实体集发生联系。实体集,78,问题之二:联系?实体集?,大多数情况下,根据个人考虑问题的思路选“联系”或“实体集”表达均可但具体问题,有一些具体因素要考虑。例如:,有关影星与制片公司签约问题用“签约”这一联系?用“合同”这一实体集?,79,多路联系,P77,1)制片公司有两个:影星所属影片所属,两个公司两个角色,80,P79,(公司1,公司2,影星,片),两个公司两个联系,弱实体集,81,2)考虑一个影星、因一个影片与一组(任意多个,担不同角色)公司签约。不能用任意多个角色不能用任意多个联系用连接实体集(合同)实现,多对多,弱实体集,P85,82,约束的分类:键(keys)也称关键字键码码-实体完整性单值约束(single-valueconstraints)-值在某种情况下具有唯一性参照完整性的约束-参照关系引用完整性域的约束-取值范围一般约束-任意断言,2.3.7对约束建模E/R模型中表达完整性约束,83,一、E/R模型中的键实体集的键由实体集中的一个或多个属性构成,用来唯一地标识实体,且无多余属性。,E/R模型中的表示:,84,键(候选码键码码)主键:用下画线标明其它键不标或另加注释,例:身份证号车牌号学号(片名,年份).,*弱实体集的键属性可以不在实体集内部。,85,二、单值约束每个实体键具有唯一性。属性不可分1NF;具体实体的任意属性最多一个值多对一一对一(允许空值),86,如:职工有唯一部门学生有唯一的班级电影有唯一的制片公司,三、参
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度电影演员合作协议书范本
- 2025版工艺品文化体验馆投资建设合同
- 2025版工地水泥黄沙资源整合承包服务协议
- 二零二五版医疗器械维修与保养服务合同
- 2025版爆破拆除工程竣工验收合同规范
- 二零二五年度房地产销售行业领袖峰会合作协议
- 2025版人工智能机器人研发与应用合作协议
- 2025版离婚同居协议书:财产分割与共同财产管理协议
- 二零二五版家具制造业专用运输合同书
- 2025至2030年中国座便器市场全面调研及行业投资潜力预测报告
- 中国近现代史纲要-第七章
- 营销中心岗位职责及流程样本
- 送货单完整模板
- 如何成为一名好的医生
- 消防员考试:消防监控上岗证试题及答案
- 雅安市雨城区2024年重点中学小升初数学入学考试卷含解析
- JBT 9229-2024 剪叉式升降工作平台(正式版)
- 土地出租合同书电子版
- 散热器恒温控制阀规范指引
- 如何写好一篇医疗科普文章
- 《化妆品稳定性试验规范》
评论
0/150
提交评论