《-小明音乐库管理系统课件03第3章PPT内容-.docx》由会员分享,可在线阅读,更多相关《-小明音乐库管理系统课件03第3章PPT内容-.docx(9页珍藏版)》请在优知文库上搜索。
1、”小明音乐库管理系统课件03第3章PPT内容”1、小明音乐库管理系统第3章数据库设计学习目标了解ER图,把握类图的绘制。了解数据库模型、概念模型、数据模型三者之间的关系,了解数据结构、数据操作和完整性的概念。把握关系、元组、属性、码、域、重量、关系模式、主属性、非主属性等关系模型的概念。了解概念模型和关系模型概念之间的对应关系,把握将概念模型转换成关系模型的方法。深刻理解关系模型表示联系的方法,深刻理解主从记录的概念,深刻理解1对1、1对多、多对多的概念。了解DB、DBMS、DBS的概念区分和联系,了解DBA的概念。3.1数据库基本概念L信息和数据信息(InfOrmatiOn),指音讯、消息、
2、通讯系统传输和处理的对象,是针对人来2、说的一个概念。数据(Data),是描述客观事物的符号,是计算机中可以操作的对象,是针对计算机的一个概念。2.数据库数据库(Database,DB),简洁的来说数据库就是数据的集合结构性,数据根据肯定的结构实现联系和组织独立性,数据的规律结构和应用程序相互独立集中性,不同的用户或同一用户的数据集中在一起统一管理数据库管理系统(DatabaSeManagementSystem,DBMS),负责数据库管理和掌握的软件系统数据库系统(DatabaseSystem,DBS),是指引入数据库后的计算机系统数据库管理员(DatabaseAdministrator,DB
3、A),负责全面管理和掌握数据库系3、统的人3.2概念模型1.创建实体模型实体类:需要保存到数据库中的类,通常会增加一些和数据库存储相关的特性实体数据模型向导对话框1.创建实体模型实体类:需要保存到数据库中的类,通常会增加一些和数据库存储相关的特性实体数据模型可视化设计界面2.设计实体类Music、DigitaIMusic和MediaMusic组合成了一个Music类,没有使用继承概念通过MediaType属性来实现区分多重性Category类和Music类之间的连线表示关联关系关联基数(多重性)为一对多Category端多重性为1,说明一件音乐资料可以属于某一个音乐分类Music端多重性为多,
4、说明一个音乐分类4、可以包含任意数量的音乐资料Category类是主类,Music类是从类从主类画到从类多重性是由业务需求确定的,业务打算设计Music类有一个叫CategOry的导航属性,用于记录一件音乐资料所属的音乐分类Category类有到Music类的导航属性MUSiC是一个集合属性多重性是由业务需求确定的数据类型数据库有关的特性定义,例如Music类的MediaType属性的类型应当是一个枚举型在数据库中存放枚举型数据时实际保存其代码,而不是名称代码更便于计算机检查、比较定义MediaTyPe属性的数据类型为int在设计文档中说明:“0-文件、I-CD2-DVD3-BD、4-磁带3.
5、概5、念模型实体类图主要反映了业务数据的特征,在数据库理论中称为概念模型又称概念数据模型、信息模型是现实世界的业务在人们头脑中形成的反映,是人脑对业务的理解不仅仅是静态业务的反映,还要能够反映业务可能的变化实体Entity指客观存在并可相互区分的事物实体应局限于业务对象,对应现实世界中的同一类事物给这一类事物取一个名,即实体名留意,实体名代表的是同一类事物,它和详细的单个实体是不同音乐分类音乐资料爸爸去哪儿3.概念模型属性Attribute指实体所具有的某种特性或特征除了知道实体是属于哪一类的实体外,还要把握它的各种业务特性不严格区分某个实体和某类实体的属性,统称为实体的属性,或简称属性域Do
6、ma6、in指属性的取值范围,例如音乐资料的MediaType属性数据库中用Int32数据类型来保存,取值范围是-21474836482147483647但这个属性的域是0,1,2,3,4作品名称表演者出版年月封面图片存放地点3.概念模型码(键)Key指唯一标识实体的属性集码、键、关键字,都是指一个或多个实体的属性不同实体的这些属性值至少有一处是不同,假如这些属性值全相同那肯定是同一个实体关键字留意事项假如是多个属性,唯一性是指多个属性值的组合具有唯一性音乐资料实体,名称不是关键字,属性组合名称,表演者,出版时间是关键字。确定唯一性关键是有否可能消失重复值实际业务中,实体不肯定有关键7、字,可
7、人为增加幼儿园小伴侣,人为增加学号设计数据库时给实体增加一个计算机自动生成值的属性(通常叫Id)一类实体的关键字可以有多个,其中最常用的关键字叫做主关键字由设计人员主观确定实际操作经常选择最简洁的那个关键字3.概念模型实体型指同类实体的抽象和刻画用实体名加上属性集合来刻画UML中叫做实体类实体集指同类实体的集合实体集中是详细的实体实体集中的实体是会变化的是同一类的实体,是一个实体类的不同实例对象音乐资料型的示意图音乐资料集示意图3.概念模型联系是实体集之间的联系,也就是类图中的关联关系可以给联系取个名字便于称呼联系指实体集中的实体之间可能会有的联系只需关注需要管理的联系联系一般发生在8、两个不
8、同的实体集之间,但也可以发生在多个实体集之间,甚至发生在同一个实体集中两个实体集之间的联系多重性主要有1对1、1对多和多对多三类简记为1:1、l:n和n:m音乐分类和音乐资料之间属于联系不是说任何音乐分类都和全部音乐资料存在这个联系这件音乐资料是张三从新华书店买来的部门之间的上下级关系发生在部门集中4.ER图和类图传统数据库设计使用实体关系图(Entity-ReIatiOnShip,ER图)来描述实体和联系矩形表示实体型用椭圆表示实体属性菱形表示联系无向边连接相应的实体型无向边旁标上多重性MPMM的ER图4.ER图和类图类图是ER图的面对对象设计的增加版请给出MPMM的类图9、3.3数据模型1
9、.数据库系统的产生概念模型的作用就是关心理解软件系统将要管理的数据和数据间的联系计算机无法直接管理概念模型由开发人员想方法实现早期,直接将数据存储在文件中特地负责数据管理的软件系统,数据库系统数据结构化一系列的操作功能来对数据和结构的处理特别便利地实现数据管理2.数据库模型数据库系统供应的数据结构以及其上的操作功能?数据模型:数据、数据间联系的表示形式静态结构动态特性完整性约束条件2.数据库模型数据库系统供应的数据结构以及其上的操作功能?数据模型:数据、数据间联系的表示形式静态结构、动态特性、完整性约束条件概念数据模型,即概念模型、信息模型,是面对客观世界、面对用户的10、模型,主要用于数据库
10、设计规律数据模型:有时候简称数据模型,是面对计算机系统的模型,主要用于数据库实现2.数据库模型数据库系统供应的数据结构以及其上的操作功能?数据模型:数据、数据间联系的表示形式概念数据模型,即概念模型、信息模型,是面对客观世界、面对用户的模型,主要用于数据库设计规律数据模型:有时候简称数据模型,是面对计算机系统的模型,主要用于数据库实现2.数据库模型数据模型的三个构成要素:静态结构、业务操作和完整性约束数据结构:对象的集合及联系,是数据模型的基础,是静态特性的描述数据操作:所讨论对象(实体、属性、联系)上的操作及其所应当遵守的规章,是对系统动态特性的描述完整性约束条件数据11、正确性、有效性、相
11、容性的规章集合完全由业务规律来确定数据库系统只供应基本的完整性约束条件的管理力量往往要靠软件开发人员通过编程来进行掌握集合、线性表、矩阵、树、图创建(Create)、删除(Delete)、修改(UPdate)和查询(RetrieVe)CRUD,CUD3.关系模型完成概念模型设计,接下来是设计数据库模型即将概念模型转换成数据模型基于数据库系统实现数据管理,依据数据库系统所支持的数据结构来进行转换目前最常用的关系数据库系统,支持关系模型关系模型的重要概念关系(Relation):一张二维表称为一个关系(这就是一个术语而已)元组Tuple:表中的一行属性AttribUte:表12、中的一列码Key(
12、候选码):某个属性(组)值可以唯一确定一个元组域Domain:属性的取值范围重量:元组中的一个属性值关系模式:对关系结构的描述。通常表示形式为“关系名(属性名,属性名2,属性名n)主属性:包含在任意候选码中的属性非主属性:不包含在全部候选码中的属性音乐资料表概念模型和关系模型转换4.关系操纵和完整性关系模型支持的基本操作就是CRUD关系模型支持集合操作一次性增加、查询、更新或删除多条记录程序语言支持直接对关系数据库进行集合操作对数据操作的模式通常仍是逐条进行开发人员需要通过循环来实现两者之间的转换LINQ支持集合操作数据关系模型也供应了完整性约束条件实体完整性、参照完整13、性和用户自定义完整
13、性关系数据库供应的完整性空值:表示是没有值,关系数据库中NULL表示,就像布尔型的true、false一样,是一个值实体完整性:每一个表中的主键字段都不能为空或消失重复值,强制执行外码(外键):一个关系中含有的某个关系主键对应的属性(组)参照完整性:关系中的外码取值除非(都)为NULL,否则在被参照关系中必需存在相同主键值的元组用于保证一个实体的关联实体是存在的,强制执行当删除主实体时置空:把全部从实体(参照主实体的实体)外键取值设为NULL级联删除:把全部从实体一起删除拒绝删除,存在从实体的时就不允许删除“主实体自定义完整性:对某一详细关系数据库的约14、束条件,反映详细业务对数据的要求自定
14、义完整性常常需要开发人员自己编写代码来实现不定义主键和参照的方法来绕过数据库系统的完整性机制,维护完整性的任务完全交给开发人员,不推举!5.用关系表示联系关系模型中,实体和联系的表示方法都是关系,操纵联系就和操纵实体一样便利IDCodeNameDeSCriPtiOnlLhy灵魂乐灵魂乐是一种结合了节奏蓝调和福音音乐的音乐流派。2Ygy摇滚乐摇滚乐主要受到节奏布鲁斯、乡村音乐和叮砰巷音乐的影响进展而来。摇滚乐分支众多,形态简单。3mzcf民族唱法民族唱法是由中国各族人民根据自己的习惯和爱好,制造和进展起来的唱歌艺术的一种唱法。表表34音乐分类表音乐分类表15、CategOry5.用关系表示联系关
15、系模型中,实体和联系的表示方法都是关系,操纵联系就和操纵实体一样便利表表35音乐资料表音乐资料表MusiclDcodeNameperformersPubIishDatelAbjs爱,不解释张杰2022-12-272Zxysrzc张学友私人珍娥张学友2022-06-103tiabdTodayIsABeautifulDay初音将来2022-03-20表36非数字化音乐表MediaMusiclDMeidaTypeGoWherelCDA-1-22黑胶CDA-1-23BD借:张航渡5.用关系表示联系关系模型中,实体和联系的表示方法都是关系,操纵联系16、就和操纵实体一样便利1)1对1在任意表中增加外键,
16、保存对应实体的主键值由于实体之间是对应的,所以两张表可以合并成一张IDMeidaTypeGoWhereMusicJDlCDA-1-232黑胶CDA-1-213BD借:张航渡25用关系表示联系关系模型中,实体和联系的表示方法都是关系,操纵联系就和操纵实体一样便利2)1对多在从表中增加外键,保存对应主实体的主键值常犯错误:直接在从实体中保存对应主实体信息IDCodeNamePerfOrmerSPUbliShDateCategOry_lDlAbjS爱,不解释张杰2022-12-2722Zxysrzc张学友私人珍藏张学友2022-06-10117、3tiabdTodayIsABeautifulDay初音将来2022-03-2022.用关系表示联系关系模型中,实体和联系的表示方法都是关系,操纵联系就和操纵实体一样便利3)多对多单独为两者之间的联系定义一张表,表中同时保存主、从表的两个外键IDCategoryJDMusicJDl11221312423