对象关系数据库
使用面向对象方法学可以定义任何一种DBMS数据库,即网络型、层次型、关系型、面向对象型均可,甚至文件系统设计可以遵循面向对象的思路。对象-关系数据库正是把面向对象方法学与关系数据库系统技术相结合的产物。
按照“第三代数据库系统宣言”的文章的思想,一个面向对象数据库系统(OODBS)必须满足两个条件:
(1)支持统一核心的面向对象数据模型;
(2)支持传统数据库系统所有的数据库特征。
也就是说,面向对象数据库系统必须保持第二代数据库系统所具有的非过程化数据存取方式和数据独立性,既能很好地支持对象管理,又能更好的支持现有的各种优秀的数据管理技术。
对象-关系数据库系统将关系数据库系统与面向对象数据库系统两方面的特征的相结合,增强了数据库的功能,使之具备了主动数据库和知识库的特性。对象-关系数据库系统除了具有原来关系数据库的各种特点外,还具备以下特点:
(1)应具有扩充数据类型。目前商品化的关系型数据系统只能支持某一固定的类型集,而不能依据某一应用特殊需求来扩展其类型集。而对象-关系数据库系统应具有允许用户利用面向对象技术扩充数据类型,允许用户根据应用需求自己定义一个新的数据类型及相应的操作。新的数据类型、操作一经定义,就如同基本数据类型一样可供所有用户共享。
(2)支持复杂对象。对象-关系数据库系统能够在SQL中支持复杂对象,实现对复杂对象的查询等处理。复杂对象是指由多种基本类型或用户自定义的数据类型构成的对象。
(3)支持继承的概念。继承是面向对象技术的一个重要概念,对象-关系数据库系统能够支持子类、超类的概念,即支持继承的概念,如能够实现属性数据的继承和函数及过程的继承等;而且支持单继承与多继承等,也支持函数重载等面向对象的重要思想。
(4)提供通用的规则系统。对象-关系数据库系统能提供强大而通用的规则系统。在传统的关系型数据库系统中,一般用触发起来保证数据库中数据的完整性,触发器是规则的一种形式。对象-关系数据库系统要支持地规则系统应该更通用,更灵活,并且要与其它的对象-关系处理方式相统一。例如规则中的事件和动作可以是合适的SQL语句,可以使用自定义函数,规则也能够被继承等。
另外参见:
http://wenku.baidu.com/link?url=o1O9aL_Ad9wSYhJ0Lu-eTOSkqgYKXB4tCwDwyumtCojhEeLcfP63CXW-3K4oeMuGVW_lTNOjWwOZnwSwFW7sqMb9m_qSK3v_pgZW3QwsVWy