面向对象数据库数据库转换技术

面向对象数据库数据库转换技术异构数据库系统中各数据库模式和操作之间转换是一个关键研究课题

由于关系数据库系统主宰当今数据库应用领域,而面向对象数据库能满足更高一级数据库要求,所以有必要在这两种数据库模型中建立一种映射关系,实现模式和操作相互转换 

转换一般有两种途径:从关系DB到面向对象DB(RDBtoOODB)和从面向对象DB到关系DB(OODBtoRDB)

OODBtoRDB转换技术转换时要保证一致性(对象语义和动作信息在转换过程中不丢失)

转换包括数据模式和数据操作转换

数据模式转换对象标识符是对象存在的唯一标志,两个对象相同等价于其标识符相同

与关系模式不同的是面向对象中类属性分为原子属性、组合属性和集合属性

数据模式转换指从OODB到RDB数据描述语言(DML)的转换,基本思路是把父类属性扩展到所有子类中,每个类映射为一个关系;类的每个属性映射为它对应的关系属性

类中不同类型属性作不同处理

默认对象标识符属性映射为RDB关键字属性,原子属性映射为固定属性,组合属性映射为与主属性对应关系关键字相关的外关键字,集合属性映射为原子属性加上具有两个属性的关系,其中一个属性是设置与对应的集合属性的联系;另一个属性是处理集合元素

方法转换是数据模式转换的重要转换,方法有定义和调用

标准RDB无支持用户自定义函数和过程的机制,近年来一些商业化RDBMS提供这方面的功能,称为PSM子程序(包含用户自定义函数和过程)

标准PSM子程序至少支持以下两种功能:①创建用户自定义函数,并从标量表达式中调用此函数;②创建用户自定义过程,并通过一个新的SQL语句(典型的是CALL)调用这些过程

继承性是OODBMS典型特性,M.Blaha提出四种借助关系表处理继承性的方法,其核心是把分层结构中的每个类转换为一张表

数据操作转换数据模式转换是指从OODB到RDB数据操纵语言(DCL)的转换

本文从OODB to RDB角度讲述

数据库常用操作有数据查询、插入、删除和修改,它们都离不开限制条件,所以先讲述限制条件转换

我们用 和 分别表示类限制条件和关系限制条件

相比之下, 比 多两个机制:路径表达式操作数机制和集合操作数及运算符

通过直接设置类C某些属性及以类C为根类组合层次结构中的限定谓词得到

根据 我们得到一个类限定图GC,同样每一个 也对应一个关系限定图GR

实施限制条件转换时,通常是先根据 构造 ,然后把GC转换成GR,最后由GR产生

数据查询转换是把对象查询运算转换为关系查询运算

其过程是从指定的类和(或)它的所有子类映射关系中选出与 限定对象对应的元组(由关系限定条件 所限定)

数据修改转换是把对象修改运算转换为关系修改运算

该操作受QR(由 映射得到)限定,过程是删除所有旧元组后再插人新元组

数据插入转换与此相似

数据删除转换是把对象删除运算转换为关系删除运算,该操作受 (由QC映射得到)限定,此时必须把与这些组合对象对应的元组中那些外关键字属性设置为NULL

以上内容由大学时代综合整理自互联网,实际情况请以官方资料为准。

相关