资源描述
,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,Microsoft,SQL Server 2012,SQL Server 2012,数据库技术及应用,人民邮电出版社,*,教学单元,2.1,第,2,章,需求分析与数据库概念设计(,IDEF1X,),SQL Server 2012,数据库技术及应用,案例,2-2-1,图书管理系统需求分析,案例,2-2-2,图书,管理数据库概念设计,需求分析与数据库概念设计 学习导航,2,需求分析与数据库概念设计 知识框架,3,单元,2.1,需求分析与数据库概念设计,(,IDEF1X,),能力目标,能够,根据系统需求分析进行数据库概念设计(,IDEF1X,),能够使用,Office,Visio,工具建立,IDEF1X,概念模型,能够阅读并,理解,IDEF1X,建模有关,的,英文,知识目标,数据库,概念设计(,IDEF1X,方法),Visio,的,IDEF1X,建模工具使用方法。,IDEF1X,建模有关的,英文,素质目标,培养,团队精神和自主学习的,能力,培养知难而进的,学习态度,4,案例,2,图书管理系统,案例,2-2-1,图书管理系统需求分析,案例,2-2-2,图书管理数据库概念设计,工作任务,5,单元,2.1,需求分析与数据库概念设计(,IDEF1X,),需求分析,一,IDEF1X,方法概念设计,二,6,单元,2.1,需求分析与数据库概念设计(,IDEF1X,),工作任务,7,案例,2-2-1,图书管理系统需求分析,对某图书馆管理部门进行系统需求分析。首先了解该部门的组织结构和工作岗位,然后了解各部门要处理的数据和业务流程,绘制,数据流图,DFD,。,分析用户的数据管理要求,说明系统,功能需求,。,分析所有的数据项,建立,数据字典,DD,。,一、需求分析,一、需求分析,组织结构,用户业务流程与信息的载体,对分析人员理解企业的业务、确定系统范围具有很好的帮助,图书管理组织结构,8,一、需求分析,数据流图,表达了数据和处理过程的关系,图书管理数据业务流程,(DFD),9,一、需求分析,功能需求,编辑、查询、报表,图书管理处理功能需求,读者管理功能:,能够插入、更新和删除读者信息,查询和分类统计读者信息。,图书管理功能:,能够插入、更新和删除图书信息,查询和分类统计图书信息。,借书还书管理功能:,能够插入、更新和删除读者借书、还书信息,查询和分类统计读者借书、还书信息。,10,一、需求分析,描述信息需求,各类数据描述的集合,图书管理数据字典,(DD),有关读者的数据信息。,读者信息:,读者编号、姓名、类型编号、已借数量、地址、电话、,EMAIL,等。,读者类型信息:,类型编号、类型名称、限借数量、限借天数、逾期罚款、丢失罚款等。,罚款信息:,读者编号、罚款编号、罚款原因、罚款金额、罚款日期等。,有关图书的数据信息。,图书信息:,图书编号、书名、作者名、出版社编号、出版日期、定价、是否借出、内容简介等。,出版社信息:,出版社编号、出版社名称、出版社地址、联系电话、,EMAIL,、联系人等。,图书修复信息:,修复编号、图书编号、损坏程度、损坏原因、修复内容、修复日期、修复费用等。,有关读者借阅图书的数据信息。,借阅信息:,读者编号、图书编号、借期、还期等。,11,单元,2.1,需求分析与数据库概念设计(,IDEF1X,),需求分析,一,IDEF1X,方法概念设计,二,12,工作任务,13,案例,2-2-2,图书管理数据库概念设计,学习,Microsoft Office Visio,制图软件。,根据图书管理系统的需求分析,采用,IDEF1X,方法建立图书管理数据库的概念模型。,二、,IDEF1X,方法概念设计,二、,IDEF1X,方法概念设计,IDEF1X,标准中的实体,1,IDEF1X,标准中的属性,2,3,IDEF1X,标准中的联系,使用,Visio,建立,IDEF1X,概念模型,4,14,(,一),IDEF1X,标准中的实体,不依赖于其他实体和联系就可以独立存在的实体,在这个实体的主键属性组中没有来自其他实体的主键,用方角矩形表示,独立实体也常被称为强实体或拥有者实体,独立实体,15,(,一),IDEF1X,标准中的实体,依赖于其他实体和联系才能够存在的实体,在这个实体的主键属性组中包含来自其他实体的主键,用圆角矩形表示,从属实体也常被称为弱实体或依赖实体,从属实体,16,(,一),IDEF1X,标准中的实体,该实体的实例可以被关联到其他实体(子实体),的,0,个、,1,个或多个实例上,。,父实体(,Parent Entity,),子实体(,Child,Entity,),该实体的实例可以被确定地关联到其他实体(父实体)的,1,个实例上,特殊情况下可以是,0,个实例。如果该子实体中的主键含有父实体的主键属性,则为父实体的从属实体。,17,(,一),IDEF1X,标准中的实体,实体“读者”,(独立父实体),主键“读者编号”可以唯一识别每一个读者,不依赖于任何实体的主键,是一个独立实体。,实体“罚款”(从属子实体),一位读者可能有几次因为延期还书、丢失图书、损坏图书的罚款,“罚款”的主键可以设为“读者编号,+,罚款编号”,包含了实体“读者”的主键“读者编号”,所以实体“罚款”是从属实体。,父子关系,对于实体“读者”与实体“罚款”存在“,1,到,0,或多”的联系,所以实体“读者”为父实体,实体“罚款”为子实体,图书管理系统实体父子关系,从属实体一定是父实体的子实体,子实体不一定是父实体的从属实体,18,二、,IDEF1X,方法概念设计,IDEF1X,标准中的实体,1,IDEF1X,标准中的属性,2,3,IDEF1X,标准中的联系,使用,Visio,建立,IDEF1X,概念模型,4,19,(,二),IDEF1X,标准中的属性,实体的属性,:,用,矩形,中的属性名称来表示,主键的属性,:,放在横穿实体矩形中的一条直线之上,外键的属性,:,在其后加“,FK,”进行指明,主键、外键和非主键属性,20,二、,IDEF1X,方法概念设计,IDEF1X,标准中的实体,1,IDEF1X,标准中的属性,2,3,IDEF1X,标准中的联系,使用,Visio,建立,IDEF1X,概念模型,4,21,(,三),IDEF1X,标准中的联系,联系类型,22,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),它是父(,Parent,)实体和子(,Child,)实体之间的联系,也称父子联系(,Parent-Child Relationship,)。,联系用,一条连线,表示,连线的子实体端带有一个,实心圆,。,连接联系又分为标识联系、非标识联系(强制,/,非强制)等。,确定联系,连接联系,23,连接联系,标识联系:,1,到,0,或多(主从联系),父实体与子实体之间的联系为“,1,到,0,或多(主从联系)”,将父实体的主键迁移到子实体中作为主键属性,联合构成子实体的主键,,并成为子实体的外键(,FK,),联系用实线表示,子实体为从属实体(圆角矩形),24,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),连接联系,标识联系:,1,到,0,或多(主从联系),父实体“读者”和子实体“罚款”之间的联系为“,1,到,0,或多”的标识联系,将父实体“读者”的主键“读者编号”迁移到子实体“罚款”中作为其外键(,FK,),并与子实体的“罚款编号”联合构成子实体的主键,共同标识子实体的每个实例,联系用实线表示,子实体为从属实体(圆角矩形),25,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),连接联系,非标识联系(强制):,1,到,0,或多,父实体与子实体之间的联系为“,1,到,0,或多”,即子实体的每个实例必须与一个父实体的实例关联,父实体的主键,不,迁移到子实体的主键上,而是迁移到子实体作为,非主属性,,并成为子实体的外键(,FK,),联系用,虚线,表示,子实体为独立实体(,方角矩形,),26,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),连接联系,非标识联系(强制):,1,到,0,或多,父实体“读者类型”和子实体“读者”之间存在“,1,到,0,或多”的非标识联系(强制),即对于子实体“读者”中的每个实例的“类型编号”的值必须与父实体“读者类型”中的一个且仅与一个“类型编号”值,相关联,将父实体“读者类型”的主键“类型编号”迁移到子实体“读者”中作为,非主属性,,并成为其外键(,FK,),联系用,虚线,表示,子实体为独立实体(,方角矩形,),27,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),连接联系,非标识联系(非强制):,0,或,1,到,0,或多,父实体与子实体之间的联系为“,0,或,1,到,0,或多”,即子实体的每个实例,不是必须,与一个父实体的实例关联,父实体的主键不迁移到子实体的主键上,而是迁移到子实体作为,非主属性,,并成为子实体的外键(,FK,),联系用,虚线,表示,子实体为独立实体,(方角矩形),,连线的父实体端用,空心钻石,来表示,28,连接联系,非标识联系(非强制):,0,或,1,到,0,或多,父实体“出版社”和子实体“图书”之间的联系为“,0,或,1,到,0,或多”的非标识联系(非强制),在子实体“图书”中可能存在非正式出版社出版的图书,外键“出版社编号”的值被允许为空值(,NULL,),不与父实体“出版社”相关联,将父实体“出版社”的主键“出版社编号”迁移到子实体“图书”中作为,非主属性,,并成为其外键(,标识为,FK,),允许空值(标记为,0,),联系用,虚线,表示,连线父实体端用,空心钻石,来表示,29,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),分类联系,:,1,到,0,或,1,一般实体与分类实体联系类型,一个实体(一般实体)表示这些事物的全集,其他几个实体(分类实体)则为其子集,一般实体经过鉴别器对一个属性值进行判断(类似于多路开关)与相应子实体关联,之间用连线表示,,线的两端没有实心圆,。分类实体用,圆角矩形,表示,从属于一般实体,完全分类联系:,1,到,1,不完全分类联系:,1,到,0,或,1,各个分类实体(子集)的属性可以不同!,30,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),分类联系,完全分类联系:,1,到,1,完全分类联系(一般实体与分类实体联系类型),在一般实体中的每个实例恰好与一个且仅为一个分类实体的实例相联系,鉴别器用一个圆圈下面两条线表示,31,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),分类联系,完全分类联系:,1,到,1,假设图书有中文和外文两大类,在一般实体“图书”中设置一个鉴别器属性“图书类型”,当“图书类型”属性值为“中文”时,这个实例被放入分类实体“中文图书”中,当“图书类型”属性值为“外文”时,这个实例被放入分类实体“外文图书”中,32,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),分类联系,不完全分类联系:,1,到,0,或,1,不完全分类联系(一般实体与分类实体联系类型),在一般实体中可以存在某个实例与哪个分类实体的实例都不相联系,鉴别器用一个圆圈下面一条线表示,33,(,三),IDEF1X,标准中的联系,确定联系,(0/1:,n,n,0),(,三),IDEF1X,标准中的联系,不确定联系,(,m,:,n,),不确定联系:,m:n,(,m,0,,,n,0,),两个实体之间相互存在着一对多的联系,联系用一条连线表示,连线的两端带有一个实心圆,建模时中间,增加,一个,关联实体,或解决实体,34,(,三),IDEF1X,标准中的联系,不确定联系,(,m,:,n,),不确定联系:,m:n,(,m,0,,,n,0,),实体“读者”与实体“图书”存在着“多对多”的联系,一位读者可以借阅多本书,一本书也可以被多位读者借阅(不同的时期),在读者借阅图书的关联中派生了属性“借期”和“还期”等信息,增加一个关联实体“借阅”,将父实体“读者”的主键“读者编号”和另一个父实体“图书”的主键“图书编号”迁移过来,与借书时间“借期”一起联合构成“关联实体”的主键,并分别成为关联实体的外键(,FK,),35,二、,IDEF1X,方法概念设计,IDEF1X,标准中的实体,1,IDEF1X,标准中的属性,2,3,IDEF1X,标准中的联系,使用,Visio,建立,IDEF1X,概念模型,4,36,(四)使用,Visio,建立,IDEF1X,概念模型,图书管理数据库的实体(下划线属性为主键),读者,:,读者编号,、姓名、已借数量、地址、电话、,EMAIL,等。,读者类型,:,类型编号,、类型名称、限借数量、限借天数、逾期罚款、丢失罚款等。,罚款,:,罚款编号,、罚款原因、罚款金额、罚款日期等。,图书,:,图书编号,、书名、作者名、出版日期、定价、是否借出等。,出版社,:,出版社编号,、出版社名称、出版社地址、联系电话、,EMAIL,、联系人等。,图书修复,:,修复编号,、损坏程度、损坏原因、修复内容、修复日期、修复费用等。,37,(四)使用,Visio,建立,IDEF1X,概念模型,选择【数据库模型图】模板或者选择主菜单,“,文件,”,“,新建,”,“,软件和数据库,”,“,数据库模型图,”,38,(四)使用,Visio,建立,IDEF1X,概念模型,选择主菜单,“,数据库,”,“,选项,”,“,文档,”,“,数据库模型图,”,,在弹出的,【,数据库文档选项,】,对话框中选择,IDEF1X,符号集,39,(四)使用,Visio,建立,IDEF1X,概念模型,建立实体“读者”等模型。,将,【,实体关系,】,形状窗,格中,的“实体”拖动到绘图页上,在绘图页下方的数据库属性窗格中选择,“,类别,”,“,定义,”,,输入实体的名称,40,(四)使用,Visio,建立,IDEF1X,概念模型,建立实体“读者”等模型。,选择“类别”“列”,输入实体的属性和设置,PK,(主键),41,(四)使用,Visio,建立,IDEF1X,概念模型,用同样的方法建立实体,“读者类型”、“罚款”、“图书”、“出版社”和“图书修复”的模型。,42,(四)使用,Visio,建立,IDEF1X,概念模型,图书管理数据库的联系,确定联系,标识联系,:,图书与图书修复(,1,到,0,或多),读者与罚款(,1,到,0,或多),确定联系,非标识联系(强制,),读者,类型与读者(,1,到,0,或多),确定,联系,非标识联系(非强制,),出版社,与图书(,0,或,1,到,0,或多,),不确定,联系,:,读者,与图书(多到多,),43,(四)使用,Visio,建立,IDEF1X,概念模型,为父实体“图书”和子实体“图书修复”建立“,1,到,0,或多,”的标识联系。,将,【,实体关系,】,形状窗,格中,的“,关系,”拖动到绘图页上,拖动“关系”的两端使,其,连接的实体边框变红,单击“关系”形状,在绘图页下方的数据库属性窗格中选择,“,类别,”,“,杂项,”,,选择关系类型“,标识,”建立标识联系(本例),选择“不标识”建立非标识联系,选择关系基数,“,零或多,(本例),/,一或多,/,零或一,/,恰好为一,/,范围:最小值至最大值”确定关系类型,44,(四)使用,Visio,建立,IDEF1X,概念模型,为父实体“读者”和子实体“罚款”建立“,1,到,0,或多”的标识联系,从子实体“罚款”的“列表”中可以看到从父实体迁移过来的“读者编号”与子实体的属性“罚款编号”组合成为实体“罚款”的主键。,45,(四)使用,Visio,建立,IDEF1X,概念模型,为父实体“读者类型”和子实体“读者”建立“,1,到,0,或多”的非标识联系(强制),46,(四)使用,Visio,建立,IDEF1X,概念模型,为父实体“出版社”和子实体“图书”建立“,0,或,1,到,0,或多”的非标识联系(非强制),将实体“图书”中的出版社编号设置为非必需的(允许空值),47,(四)使用,Visio,建立,IDEF1X,概念模型,为实体“读者”和实体“图书”建立多,到,多的不确定联系。,首先建立一个关联实体“借阅”,为此实体设置属性,48,(四)使用,Visio,建立,IDEF1X,概念模型,为实体“读者”和实体“图书”建立多,到,多的不确定联系。,其次建立父实体“读者”和关联实体“借阅”的“,1,到,0,或多”的标识联系,最后建立父实体“图书”和关联实体“借阅”之间的“,1,到,0,或多”的标识联系,49,图书管理数据库实体以及之间的联系,(,1,)实体:读者、读者类型、罚款、图书、图书修复、出版社以及它们的属性(略)。,(,2,)确定联系,标识联系:读者与罚款(,1,到,0,或多)、图书与图书修复(,1,到,0,或多)。,(,3,)确定联系,非标识联系(强制):读者类型与读者(,1,到,0,或多)。,(,4,)确定联系,非标识联系(非强制):出版社与图书(,0,或,1,到,0,或多)。,(,5,)不确定联系:读者与图书(多对多)。,50,(四)使用,Visio,建立,IDEF1X,概念模型,图书管理数据库,IDEF1X,概念模型,51,(四)使用,Visio,建立,IDEF1X,概念模型,数据库概念设计,(IDEF1X,建模,),小结,52,1,实体:独立实体(方角矩形)、从属实体(圆角矩形),2,属性:主键(实体方框直线上)、普通属性(实体方框直线上),3,联系,(,1,)确定联系,连接联系:,1/0:,n,(,n,0,)的父子联系类型,,子实体端带有一个实心圆,标识联系:,1,到,0,或多(主从联系)实线、子实体圆角矩形,非标识联系(强制):,1,到,0,或多 虚线、子实体方角矩形,非标识联系(非强制):,0,或,1,到,0,或多 虚线、父实体端空心钻石,分类联系:,1:,n,(,n=,0,或,1,)的一般实体与分类实体联系类型,完全分类联系:,1,到,1,不完全分类联系:,1,到,0,或,1,(,2,)非确定联系,m,:,n,(,m,0,,,n,0,)的不确定联系类型,中间加关联实体(子实体),两父实体一对多形成标识联系,Thank You!,SQL Server 2012,数据库技术及应用,
展开阅读全文