当前位置: 首页 > 专利查询>彭智勇专利>正文

数据库跨类查询方法技术

技术编号:2828152 阅读:244 留言:0更新日期:2012-04-11 18:40
本发明专利技术是一种用对象间的双向指针技术实现数据库跨类查询的方法。本方法包括利用对象间的双向指针实现数据库跨类查询机制的设计,以及在对象代理数据库中实现数据库跨类查询的步骤。本发明专利技术针对面向对象数据库、对象关系数据库和对象代理数据库中对象具有唯一对象标识符(OID)的特点,能够将数据库中属于不同的类、且具有相互关系的对象借助对象标识符建立起双向指针连接,在数据库查询语言的设计上增加跨类查询描述,利用双向指针连接实现数据库跨类查询。对于对象代理数据库,用双向指针记录源对象和代理对象间的代理关系,同时在数据库查询语言中使用路径表达式来描述跨类查询,从而达到了在彼此具有代理关系的类之间进行跨类查询的目的。

【技术实现步骤摘要】

本专利技术涉及数据库查询处理领域,特别是一种用对象间的双向指针技术实现数据库跨 类査询的方法。
技术介绍
随着数据库技术的不断进步,数据库的应用范围也更加广泛。 一些新的应用领域如跨 媒体应用、数字图书馆和生物信息管理等,对数据库提出了更多的要求。在这些应用中, 往往涉及到非传统形式的、复杂的数据。面向对象数据库、对象关系数据库和对象代理数 据库能较好地支持各种非传统的数据类型,对各种复杂的数据进行管理,而且在表现复杂 语义和关系方面具有较强的能力。在数据库中,复杂数据之间存在着丰富的语义关系,数 据库一方面需要支持定义这些复杂的联系,另一方面也需要支持基于复杂数据之间的语义关系进行查询。面向对象数据库支持行类型和抽象数据类型定义,对象关系数据库通过类型构造器来 创建复杂类型,对象代理数据库引入类和代理类来定义复杂数据。在这些数据库中,数据 类型与数据类型之间、类与类之间存在着各种关系和复杂语义,伴随着的是对象与对象之 间也存在相互关系或者语义联系。随着数据模型对语义进行扩充,数据库支持复杂类型和 复杂对象,由此要求对数据库查询进行扩充,以支持对复杂对象进行查询以及进行跨类查 询。在数据库中实现跨类査询,丰富了数据库的查询处理能力。针对相互关联的类型或类, 允许用户从一个类型或类中的对象出发,对相互关联的其他类型或类中的对象进行查询。 在面向对象数据库系统和对象关系数据库系统中,如果抽象数据类型的属性引用其它类型 的对象,那么允许在相互联系的类型之间进行导航査询,即访问单个对象时根据对象之间 的联系从一个对象导航到另一个对象。遍历的类型通过遍历路径进行说明,类型之间只能 是单向的关系,即路径只能从引用者出发,指向被引用者。而在对象代理数据库系统中, 类之间的代理关系在逻辑上形成了一个相互连接的网状结构,这种类之间的联系在对象层 次上则表现为相关对象之间的连接,因此可以根据类层次的导航,从一个类中的对象出发 査询其它相关类中的对象。
技术实现思路
本专利技术所要解决的技术问题是提供一种用对象间的双向指针技术实现数据库跨类查 询的方法,该方法能够在数据库中实现有效的跨类査询,进一步丰富数据库的查询处理能 力。本专利技术按下述技术方案解决其技术问题本专利技术提供的是一种用对象间的双向指针方法实现数据库的跨类査询,具体是采用包 括以下步骤的方法(1) 数据库跨类査询机制的设计在面向对象数据库、对象关系数据库和对象代理数据库中,采用包括对象间的双向指 针连接、跨类查询描述以及跨类査询处理,实现数据库跨类査询,具体是将数据库中的每一个对象赋予一个OID, OID是对象标识符,根据对象所拥有的OID 以及不同对象间所具有的关系,建立起不同对象间的双向指针,以刻画不同对象间的联系。在数据库查询语言中,为支持跨类查询描述定义相关语法。数据库跨类查询处理时,从某个初始类中的对象出发,根据对象间的双向指针,找到 目标类中相关的对象,并应用跨类查询的目标表达式,对目标类中的对象采用数据库表达 式计算的方法进行计算,最后返回跨类查询的结果;(2) 数据库跨类査询机制的实现其步骤包括根据数据组织形式,采用上述数据库跨类查询机制的设计,在数据库系 统中实现跨类查询。本专利技术具有以下主要有益效果其一.能够方便有效地表现对象间的各种语义关系。在面向对象数据库和对象关系数据库中,抽象数据类型的定义使得类型之间存在着相 互关联;在对象代理数据库中,代理类的定义使得类之间存在着代理关系。以上联系在对 象层次则表现为对象之间的相互关联。针对数据库中对象具有唯一对象标识符的特点,本 专利技术提出在相互关联的对象之间采用对象标识符建立双向指针连接。利用双向指针能方便 有效地表现对象间的各种复杂关系。其二.能够在数据库中实现有效的跨类查询操作。对象间双向指针连接的存在以及类型与类型之间、类与类之间所存在的各种语义关 系,使得在数据库内部具有了进行跨类査询的基础。本专利技术通过在现有数据库査询语言基 础上进一步扩充语义操作,使得数据库査询语言具有描述跨类査询的能力;通过扩展数据 库查询处理模块,采用一种基于对象间的双向指针连接的数据库跨类査询机制,能够在数 据库中实现有效的跨类査询操作。其三.为目前正在兴起的跨媒体应用提供有效支持。随着网上数字媒体信息呈爆炸性增长,人们已不满足通过文本之间的简单连接进行信 息检索,而希望通过挖掘和利用媒体信息之间的各种语义关联进行更广泛更深层次的跨媒 体交叉检索。通过建立各种媒体之间的双向连接,表现各种语义关系,进行有效的存储和 管理,跨类査询能够为实现高效跨媒体查询提供有效支持。 附图说明图1为对象之间的代理关系及双向指针连接的示意图。 具体实施例方式本专利技术是一种用对象间的双向指针技术实现数据库跨类查询的方法。包括数据库跨类 查询机制的设计和实现数据库跨类查询机制的步骤。具体是一. 数据库跨类查询机制的设计在面向对象数据库和对象关系数据库中,允许用户定义抽象数据类型。类型与类型之 间存在着二元关系,二元关系又可以分为一对一关系、 一对多关系、多对多关系等。由此 而产生的是类型实例间,即对象间也存在着二元关系。在对象代理数据库中,源类与代理 类之间存在着代理关系, 一个源类可以同时定义多个代理类, 一个代理类也不仅限于代理 一个源类。伴随着类之间代理关系的是对象间的代理关系。 一个类中的对象可以是多个不 同代理类中的代理对象的源对象,同时一个类中的对象也可以作为多个不同源类中的源对 象的代理对象而存在。由于在面向对象数据库、对象关系数据库和对象代理数据库中,系统为每一个对象分 配一个唯一的对象标识符,对象间的关系可以通过对象标识符相互关联来记录。 一旦对象 之间建立了联系,就为数据库进行跨类査询提供了基础。通过在数据库查询语言中支持跨 类查询描述,以及在查询处理过程中利用对象间的联系支持跨类査询处理,从而达到数据 库跨类查询的目的。在面向对象数据库、对象关系数据库和对象代理数据库中,采用包括对象间的双向指 针连接、跨类査询描述以及跨类查询处理,实现数据库跨类查询,具体是将数据库中的每一个对象赋予一个OID, OID是对象标识符,根据对象所拥有的OID以及不同对象间所具有的关系,建立起不同对象间的双向指针,以刻画不同对象间的联系。 在数据库查询语言中,为支持跨类査询描述定义相关语法。数据库查询语言中包含描 述跨类査询的语法,其是路径表达式或者是和路径表达式相类似的形式,包括跨类查询的 初始类、目标类,跨类査询所经历的类路径,以及跨类査询目标类上的表达式。数据库跨类査询处理时,从某个初始类中的对象出发,根据对象间的双向指针,找到 目标类中相关的对象,并应用跨类査询的目标表达式,对目标类中的对象采用数据库表达 式计算的方法进行计算,最后返回跨类查询的结果。所述数据库中对象间的双向指针连接,包括对象间双向指针的建立和对象间双向指针的删除,具体如下建立对象间双向指针的方法是对于属于不同的类、且彼此之间具有相互关系的对象, 当这些对象在数据库中被创建时,数据库系统根据对象所具有的对象标识符,构造两个对 象间的双向指针连接,以记录两个对象间的关系。删除对象间双向指针的方法是当某个对象被删除时,数据库系统自动删除与该对象 有关的所有双向指针连本文档来自技高网
...

【技术保护点】
数据库跨类查询方法,其特征是一种用对象间的双向指针方法实现数据库的跨类查询,具体是采用包括以下步骤的方法:(1)数据库跨类查询机制的设计:在面向对象数据库、对象关系数据库和对象代理数据库中,采用包括对象间的双向指针连接、跨类查询描述以及跨类查询处理,实现数据库跨类查询,具体是:将数据库中的每一个对象赋予一个OID,OID是对象标识符,根据对象所拥有的OID以及不同对象间所具有的关系,建立起不同对象间的双向指针,以刻画不同对象间的联系。在数据库查询语言中,为支持跨类查询描述定义相关语法。数据库跨类查询处理时,从某个初始类中的对象出发,根据对象间的双向指针,找到目标类中相关的对象,并应用跨类查询的目标表达式,对目标类中的对象采用数据库表达式计算的方法进行计算,最后返回跨类查询的结果;(2)数据库跨类查询机制的实现:其步骤包括:根据数据组织形式,采用上述数据库跨类查询机制的设计,在数据库系统中实现跨类查询。

【技术特征摘要】
1.数据库跨类查询方法,其特征是一种用对象间的双向指针方法实现数据库的跨类查询,具体是采用包括以下步骤的方法(1)数据库跨类查询机制的设计在面向对象数据库、对象关系数据库和对象代理数据库中,采用包括对象间的双向指针连接、跨类查询描述以及跨类查询处理,实现数据库跨类查询,具体是将数据库中的每一个对象赋予一个OID,OID是对象标识符,根据对象所拥有的OID以及不同对象间所具有的关系,建立起不同对象间的双向指针,以刻画不同对象间的联系。在数据库查询语言中,为支持跨类查询描述定义相关语法。数据库跨类查询处理时,从某个初始类中的对象出发,根据对象间的双向指针,找到目标类中相关的对象,并应用跨类查询的目标表达式,对目标类中的对象采用数据库表达式计算的方法进行计算,最后返回跨类查询的结果;(2)数据库跨类查询机制的实现其步骤包括根据数据组织形式,采用上述数据库跨类查询机制的设计,在数据库系统中实现跨类查询。2. 根据权利要求1所述的数据库跨类査询方法,其特征在于数据库中对象间的双 向指针连接,包括对象间双向指针的建立和对象间双向指针的删除,建立对象间双向指针的方法是对于属于不同的类、且彼此之间具有相互关系的对象, 当这些对象在数据库中被创建时,数据库系统根据对象所具有的对象标识符,构造两个对 象间的双向指针连接,以记录两个对象间的关系,删除对象间双向指针的方法是当某个对象被删除时,数据库系统自动删除与该对象 有关的所有双向指针连接。3. 根据权利要求1所述的数据库跨类査询方法,其特征在于数据库查询语言中包含 描述跨类查询的语法,其是路径表达式或者是和路径表达式相类似的形式,包括跨类查询 的初始类、目标类,跨类查询所经历的类路径,以及跨类査询目标类上的表达式。4. 根据权利要求1所述的数据库跨类査询方法,其特征在于跨类查询处理采用包括 以下步骤的方法(1) 根据跨类査询描述,确定由初始类G到达目标类Cd所经历的类路径,该类路 径不存在回路;(2) 对于初始类中的每一个对象Os,由其出发,根据数据库系统维护的对象间双向 指针连接,在跨类查询路径所涉及的所有类之间,按照深度优先遍历算法查找相互关联的 对象,直到找到属于目标类的相关对象;(3) 根据跨类查询所指定的目标类上的表达式,采用数据库表达式计算的方法,对目标类上的对象进行计算,从而完成跨类查询执行。5. —种将权利要求1至4中任一权利要求所述的...

【专利技术属性】
技术研发人员:彭智勇
申请(专利权)人:彭智勇
类型:发明
国别省市:83[中国|武汉]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1