- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
13.2.7 表空间与节点 Home OraNet ODBC 应用服务器 Oracle Server MyDBServer1 Web服务器 DB2 Server MyDBServer2 SQL Server MyDBServer3 XML JDBC 图13.9 数据库系统(服务器端)配置图示例 13.3 关系数据库逻辑模型设计 Home 13.3.1 逻辑数据模型设计 13.3.2 从类创建表 13.3.4 触发器与存储过程 13.3.3 联系的映射 ?在逻辑数据模型设计阶段,主要任务是确定应用系统所需要长期保存的持久性数据,建立数据库的逻辑模型。 ?对于关系数据库,则需要根据系统中的实体类,创建关系数据库模式,包括表、视图、索引等数据结构元素的设计,以及相应的触发器、存储器的设计。 ?数据库设计是在对数据库应用系统做常规的UML系统分析设计的基础上进行的。 ?要从众多的对象类中分离并确定具有持久性数据的实体类。把它们转换成相应的关系数据库表,并且根据实体类的属性的特征,以及类之间的联系,进行适当的映射与处理,从而建立起一个完整的关系数据库逻辑模型。 ?与数据的增、删、改等有关的约束控制,可以采用触发器实现;更一般的与数据存取有关的操作,可以采用存储过程实现。 ?在设计中应强调注意以下二点:注意关系数据库的结构特点,注意数据库应用系统的性能。 13.3.1 逻辑数据模型设计 Home ?将类转换为表的最简单做法是一对一映射,即为每一个实体类创建一个表。类中的属性就是表中的列,类中的关键字就是表的关键字。 ?在进行属性的映射时,必须注意数据类型的转换,即要把对象类的属性在原来所采用的应用模型中的数据类型,转换为数据库模型中的列的数据类型。 ?导出属性往往不必作为持久性数据存储在数据库中。当须要使用这些导出属性数据时,只要调用某个相关的程序进行计算推演即可。这可用存储过程或一个程序段实现。 ?从类创建表的过程中,需要根据数据的完整性和安全性方面的要求,指定主关键字和外来关键字,增加必要的约束条件,如合法输入值校验等,做成操作函数列入相应的表模型中。 ?从类创建表的过程中,必须考虑类之间的联系,注意关系数据模型的特点。 ?必要时可以把系统的逻辑设计模型中的一个类映射为多个表,或把多个类映射为一个表。 13.3.2 从类创建表 Home ?例:类向表映射示例,如图13.10所示。 13.3.2 从类创建表 Home STUDENTS PK Sno:LONG INT Sname:CHAR(8) S ex:CHAR(2) Birth:DATE Bplace:CHAR(24) PKPK_Student( ) Calc_Age( ) Entity STUDENTS Sno:NUMBER Sname:STRING Sex:STRING Birth:DATE Age:NUMBER Bplace:STRING 图13.10 类向表映射示例 1.关联的映射 ?对于持久数据的类模型,类之间允许有各种关联,参与关联的类的角色(Role)也可以是多种多样的 。 ?关系数据模型只支持表之间的非确定联系和确定联系,以及多重性为“一对多”的情况。 ?把类之间的关联映射为表之间的非确定联系或确定联系时,对于非“一对多”的情况需要做一些适当的处理。 ?在关系数据库模型中,无法直接表现表之间的确定联系或不确定联系,它们只能通过外来关键字或约束条件来实现。 13.3.3 联系的映射 Home (1)类之间的关联的多重性是“一对一” ?在面向对象的设计中,“一对一”的关联代表两个独立的对象类之间的联系。 ?在向关系数据模型的映射中,可以为每一个类创建一个表,其中每个表的主关键字也是它所关联的表的外来关键字,多重性“一对一”通过强制的约束实现。 ?例:在图13.11(a)中,类“ITEM”与类“ITEM_PIC”存在“一对一”的关联,即一个物件(ITEM)必有一张物件图(ITEM_PIC),而一张物件图必指定给一个确定的物件。 ?这个“一对一”的关联转换为关系数据模型如图13.11(b)所示。 ?其中,表“ITEM”与表“ITEM_PIC”之间的联系为非确定联系,它由在表“ITEM_PIC”中引入的外来关键字列“Item_ID”建立,而“Item_ID”是表“ITEM”中的关键字;同时在表“ITEM_PIC”中生成外来关键字约束FKFK_ ITEM_Pic37( )。 13.3.3 联系的映射 Home ?例:“一对一”关联的映射示例,如图13.11所示。 13.3.3
您可能关注的文档
最近下载
- (高清版)DB4401∕T 112.1-2021 《城市道路占道施工交通组织和安全措施设置 第1部分:交通安全设施设置》.pdf VIP
- 素食店创业计划书.pptx
- 5《秋天的怀念》—优质课课件(共30张PPT).pptx VIP
- 血管瘤治疗后护理.pptx
- 年产12000吨中药材中药饮片加工GMP项目可行性研究报告写作模板-备案审批.doc
- 有限空间作业考试试题库(附答案).docx
- 公共政策审计课件.pptx
- “分数除法”六年级上册第三单元整体教学设计.docx VIP
- 成考政治试题及答案.doc VIP
- 人教版七年级上册英语Starter Unit 3知识点梳理及语法讲义(学生版).pdf VIP
文档评论(0)