创建带有函数的对象类型+创建对象类型头/规范+对象体的创建+带有函数的对象类型的使用
来源:互联网 发布:mysql与sqlserver区别 编辑:程序博客网 时间:2024/06/05 15:35
创建带有函数的对象类型
创建对象类型头/规范
语法
create 【or replace】 type type_name as object (
column1 datatype[,column2 datatype,…]
member function method_name(args_list) return return_type;
)
type_name是对象类型的名称
column1是属性名称,
datatype是属性数据类型
member function:表示定义一个函数,也可是使用member procedure,表示定义的是一个存储过程,没有返回值.
注意:
method_name:函数名称
args_list:函数的参数列表
return_type:函数的返回值类型
1如果定义对象类型头时没有定义方法,则不需要建立对象类型体。
2定义对象类型最少要包含一个属性,最多包含1000个属性。
3定义时必须提供属性名和数据类型,但不能指定默认值和not null。
4属性类型不能是以下这些类型。
long ,long raw,nchar,nclob,nvarchar2,rowid,urowid,以及%type和%rowtype
举例
create or replace type class3 as object (id number,name varchar2 ( 20 ),member function get_name(no varchar2) return varchar2) ;
对象体的创建
create or replace type body type_name as
member function method_name return return_type{as | is}
variable declareations….;
begin
…
return value;
end;
end;
注意
type_name和method_name要与对象类型中的type_name和method_name一一对应
variable declareations:说明变量,并指明变量的数据类型
举例
create or replace type body class3 as member function get_name(no varchar2) return varchar2 as name varchar2(20); beginselect sname into name from zhou.student where sno=no ; return name; end;end;
带有函数的对象类型的使用
create table class_table2 (id number,deptno varchar2 ( 20 ), class3 class3--使用对象类型class3作为表class_table2的属性) ;insert into class_table2 values(1,'1',class3(10,'丽丽'));select st.id,st.class3.name,st.class3.get_name('s001') from class_table2 st
- 创建带有函数的对象类型+创建对象类型头/规范+对象体的创建+带有函数的对象类型的使用
- String类型字符串对象的创建
- 如果某一个对象没有提供创建函数,或创建函数无法达到期望的效果,如果创建新的这个类型的对象?
- IMP-00041: 警告: 创建的对象带有编译警告解决办法
- IMP-00041: 警告: 创建的对象带有编译警告解决办法
- IMP-00041: 警告: 创建的对象带有编译警告解决办法
- C#利用反射动态创建对象 带参数的构造函数和String类型
- C#利用反射动态创建对象 带参数的构造函数和String类型
- js使用函数创建对象的方式
- 万事万物皆对象、类的类类型的创建
- Java虚拟机-对象的创建,对象头
- 带有Data类型的bean对象与JSON对象的转换
- 如何用Revit API从无到有创建构建的类型对象?
- String类型的面试题 内存分配 对象创建
- FregClient进程,创建一个BpFregService类型的代理对象
- Python----一个对象的属性可以是另外一个类型创建的对象
- 一。对象管理第一次初始化(ObInitSystem) + 类型对象的创建(ObCreateObjectType)
- c#动态类型,及动态对象的创建,合并2个对象,map
- python基础
- VIRT,RES,SHR,虚拟内存和物理内存
- html结尾的url传递参数
- php计算当前时间到下个月的剩余天数
- 除非Microsoft FTP 服务(FTPSVC)正在运行,否则无法启动FTP站点。服务目前已停止
- 创建带有函数的对象类型+创建对象类型头/规范+对象体的创建+带有函数的对象类型的使用
- 伪元素 & 伪类
- iOS UITableView 默认选择某行的方法
- 仿iReader 阅读器(swift)
- Java中String字符串比较面试题
- YOLOV2参数详解
- 核心连接地址
- LeetCode-561 Array Partition I
- 刷题--调整数组顺序使奇数位于偶数前