WEB开发网
开发学院数据库Oracle Oracle中的面向对象OOP 阅读

Oracle中的面向对象OOP

 2008-12-08 13:02:00 来源:WEB开发网   
核心提示:http://www.blogjava.net/improviser/archive/2007/10/02/150166.html关系数据库在不断地发展时,许多数据库引入了面向对象的思想,Oracle中的面向对象OOP,这其中以Oracle为代表,Oracle9i就号称面向对象数据库,Type的属性没有private,

http://www.blogjava.net/improviser/archive/2007/10/02/150166.html

关系数据库在不断地发展时,许多数据库引入了面向对象的思想,这其中以Oracle为代表,Oracle9i就号称面向对象数据库。 自Oracle9i以来,Oracle就不再是单纯的关系数据库管理系统,它在关系数据库模型的基础上,添加了一系列面向对象的特性。Oracle的对象体系遵从面向对象思想的基本特征,许多概念同C++,JAVA中类似,具有继承,重载,多态等特征,但又有自己的特点。

1、 Oracle面向对象的最基本元素是它的对象类型——Type。

下面开始写自定义对象类型( as object 必须关键字)

1createorreplacetypeADDRESSas object
2 (
3   PROVINCEvarchar(10 ),
4   CITYvarchar(20 ),
5   STREETvarchar(30 )
6);

创建表并使用以上对象类型ADDRESS

1createtable STUDENTOBJ
2 (
3  STUNAMEvarchar(20 ),
4   STUADD ADDRESS
5 );
6 
7 向表中插入数据:
8insertintoSTUDENTOBJvalues('improviser',ADDRESS('广东省','广州市','江海大道');

通过别名对表进行查询

1select S.STUNAMES.ADDRESS.PROVINCES.ADDRESS.CITY

2 S.ADDRESS.STREET from STUDENTOBJS;

从上面的测试代码,可以很容易看到其与面向对象语言(比如Java)的差异,不必使用new创建实例,也没有了默认无参数构造器,默认使用定义的属性作为构造器参数,足以描述各种实体。另外,Type的属性没有private,protected,public的说法,所有的属性调用者都可以访问,即都是public。

1 2 3  下一页

Tags:Oracle 面向 对象

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接