2022年面向对象的关系数据库设计 .pdf
《2022年面向对象的关系数据库设计 .pdf》由会员分享,可在线阅读,更多相关《2022年面向对象的关系数据库设计 .pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、面向对象的关系数据库设计一、概念的区分有些人把面向对象的数据库设计( 即数据库模式 )思想与面向对象数据库管理系统 (OODBMS) 理论混为一谈。其实前者是数据库用户定义数据库模式的思路, 后者是数据库管理程序的思路。用户使用面向对象方法学可以定义任何一种DBMS 数据库 , 即网络型、层次型、关系型、面向对象型均可, 甚至文件系统设计也照样可以遵循面向对象的思路。面向对象的思路或称规范可以用于系统分析、系统设计、程序设计 , 也可以用于数据结构设计、数据库设计。 OOSE 自上至下、自始至终地贯彻面向对象思路, 是一个一气呵成的统一体。面向对象的数据库设计只是 OOSE 的一个环节。二、数
2、据库设计的重要性一般数据库设计方法有两种, 即属性主导型和实体主导型。属性主导型从归纳数据库应用的属性出发, 在归并属性集合 ( 实体) 时维持属性间的函数依赖关系。实体主导型则先从寻找对数据库应用有意义的实体入手, 然后通过定义属性来定义实体。一般现实世界的实体数在属性数 1/10 以下时 , 宜使用实体主导型设计方法。面向对象的数据库设计是从对象模型出发的, 属于实体主导型设计。一般数据库应用系统都遵循以下相关开发步骤: 1 设计应用系统结构 ; 2 选择便于将应用程序与 DBMS 结合的 DBMS 体系结构 , 如 RDBMS; 3 根据应用程序使用的环境平台, 选择适宜的 DBMS(
3、如 Oracle) 和开发工具 ( 如PB); 4 设计数据库 , 编写定义数据库模式的SQL程序; 5 编写确保数据正确录入数据库的用户接口应用程序; 6 录入数据库数据 ; 7 运行各种与数据库相关的应用程序 , 以确认和修正数据库的内容。对以上各步骤 , 有几点需要说明 : (1) 这不是瀑布模型 , 每一步都可以有反馈。在公路局系统中 , 以上各步不仅有反馈、有反复, 还有并行处理。比如一些名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - -
4、 - - - - 库表在数据录入时 , 另一些库表设计还在修改。这与我们的递增式开发方法有关, 也与面向对象的特征有关。(2) 上述顺序不是绝对的 , 大多数场合是从第三步开始的。(3) 对大多数数据库应用系统来说, 上述各步中最重要、最困难的不是应用系统设计而是数据库设计。三、DBMS 的支持和数据库设计多数据库应用系统开发者不重视数据库设计的原因是: 他们太迷信 DBMS, 认为购入一个功能强大的DBMS 后数据库设计就不困难、不重要了。一些国内外的数据库教材常常是在为 DBMS 的开发厂商做宣传 , 而很少站在数据库用户角度,从数据库应用系统出发介绍数据库设计方法。结果往往使读者搞不清书
5、中介绍的是数据库管理程序的设计思想, 还是 应用这种 DBMS 进行数据库设计的思想。其实,DBMS 只是给用户为已采用的数据库提供一个舞台, 而是否使用这个舞台上的道具以及唱什么戏 , 则完全取决于用户的戏剧脚本和导演(开发者 ) 的安排。例如, 公路局系统所使用的数据库管理系统, 是以二维表为基本管理单元、 支持所有关系代数操作、 支持 实体完整性与实体间参照完整性的全关系型RDBMS, 而我们要在这个舞台上利用上述道具 设计一个面向对象的关系数据库。四、应用对象模型与RDBMS 模型的映射数据库设计 (模式)是否支持应用系统的对象模型, 这是判断是否是面向对象数据库系统的基本出发点。由于
6、应用系统设计在前, 数据库设计随后 , 所以应用系统对象模型向数据库模式的映射是面向对象数据库设计的关键。1. 三层数据库模式面向对象模型的扩展一般数据库设计多参照ANSL/SPARC 关于数据库模式的3 层标准结构提案。最接近物理数据库的内部模式由DBMS 提供的 SQL来描述。概念模式可以由若干个内部模式聚集而成 , 它是由数据库用户规范的一些表的集合。例如, 公路局计划处数据库模式、机务处数据库模式等 , 它们是逻辑数据库 , 常常通过库表 ID来界定库边界。一般的概念模式是数据库物理模式作用域的边界 , 它能实现数据库的物理意义、特定DBMS 的特殊操作对外部应用程序的信息隐蔽。外部模
7、式是从特定用户应用角度看待的数据库模式, 从不同的应用出发对同一概念模式可以给出多种不同的外部模式。例如: 公路绿化情况查询应用看到的数据库是公路上的树木种类、数量、分布比率等, 梁隧道状况查询应用看到的是公路上的桥 梁、隧道长度、个数、路段等, 但是它们可能访问的是同一个库表的不同子集。 当外部应用系统以对象模型进行抽象时, 从各个应用出发抽象出的对象模型可以映射到外部模型上 , 对此我们不妨称之为外部对象模型。但是, 外部模型只是概念模型的子集 , 所以面向对象的数据库设计核心在于系统对象模型( 不妨名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
8、- - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - 称之为概念对象模型 ) 向数据 库概念模型的映射2. 对象模型向数据库表的映射规则由于 RDBMS 是以二维表为基本管理单元的, 所以对象模型最终是由二维表及表间关系来描述的。换言之, 对象模型向数据库概念模型的映射就是向数据库表的变换过程。有关的变换规则简单归纳如下: (1) 一个对象类可以映射为一个以上的库表, 当类间有一对多的关系时 , 一个表也可 以对应多个类。(2) 关系(一对一、一对多、多对多以及三项关系)的映射可能有多种情况 , 但一般映 射为一个表 ,
9、也可以在对象类表间定义相应的外键。对于条件关系的映射, 一个表至少应有 3 个属性。(3) 单一继承的泛化关系可以对超类、子类分别映射表, 也可以不定义父类表而让子 类表拥有父类属性 ; 反之, 也可以不定义子类表而让父类表拥有全部子类属性。(4) 对多重继承的超类和子类分别映射表, 对多次多重继承的泛化关系也映射一个表 。 (5) 对映射后的库表进行冗余控制调整, 使其达到合理的关系范式。3. 数据库模式要面向应用系统我们选择面向对象的系统设计也好, 面向对象的数据库设计也好, 根本目的是服务于应用系统的需要。以公路局计划处子系统为例。计划处的最大工作量就是处理成堆的报表 , 因此如何有效地
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年面向对象的关系数据库设计 2022 面向 对象 关系 数据库 设计
限制150内