第23卷 第3期 华侨大学学报(自然科学版)
Vol
.23
No
.3
2002 年 7 月 Journalof H uaqiao U niversity (N atural Science) Jul
.2002
文章编号 1000-5013(2002)03-0317-05
一个面向对象的扩展
Select
语句的设计与实现
陈维斌 陈启泉 林 晓
(华侨大学信息科学与工程学院,泉州 362011)
摘要 标准
SQ L
是一种基于关系数据模型的数据库查询语言,其中的
select
语句基本不具备复杂
类型数据查询能力 . 因此,在设计多媒体数据支撑环境
E
-
Support
时,针对其对象描述和查询方面
的需求,提出一个面向对象数据模型 . 在此基础上,给出一个基于面向对象数据模型的扩展 select
语句的文法 . 介绍其解释程序的实现技术,重点讨论复杂类型属性和对象引用属性的处理方法以
及如何将查询结果封装成对象 .
关键词 面向对象数据模型, 扩展
select
语句, 对象引用
中图分类号 TP311.132.3 文献标识码 A
SQ L
既是交互式的数据库语言,又广泛地嵌入各种新一代的程序设计语言,与各种符合
O D BC 标准的数据引擎,以及处理数据存储的组件(例如 A D O )有着良好的接口 . 尽管 SQ L
在处理结构化数据方面近乎于完美,但是在复杂类型数据处理及查询方面的缺陷是显而易见
的.解决问题的途径之一,是采用面向对象查询语言.目前,虽已有一些较成功的 O O D BM S 和
OSQL
,但与标准化、实用化的目标相比还有相当的距离.此外,由于很多应用是建立在关系数
据库系统基础上的,人们对关系数据库的依赖短期内难以改变 . 这些不可忽视的因素使得这
一途径并不那么有效.另一个途径是“扩充关系数据库以支持对象”
〔1 〕
,也即在关系数据库之上
增加一个对象描述与管理层.该层采用面向对象数据模型建立对象模式,通过一个与 R D BM S
的接口实现对象模式与关系存储模式的转换 . 本文提出一个面向对象数据模型
〔2, 3〕
.基于 该模
型对标准 SQ L 的 select语句进行扩充,使扩展 select 语句支持复杂类型数据查询和对象引用
等多种扩展的数据查询功能 . 该语句已嵌入到设计的多媒体数据支撑环境
E
-
Support
中.
1
扩展
select
语句的文法设计
1
.
1
E
-
Suppo rt
的面向对象数据模型简介
E
-
Support
的核心部分是一个数据对象管理器.它包括一个类描述器和一个与关系数据
库的接口.前者支持表层的数据对象描述,后者负责表层和底层之间的模式转换,
即对象模式
收稿日期 2002-04-09 作者简介 陈维斌(1957-),男,副教授
基金项目 国家高科技应用部门发展基金资助项目;福建省自然科学基金资助项目