WEB开发网
开发学院数据库Oracle PL/SQL定义部分之二复合数据类型 阅读

PL/SQL定义部分之二复合数据类型

 2009-03-12 13:10:50 来源:WEB开发网   
核心提示: 2、声明嵌套表类型变量示例:DECLARETYPE DNameList IS TABLE OF dept.dname%TYPE;nameList1 DNameList; nameList2 nameList1%TYPE; --使用%TYPE声明嵌套表类型变量 --在存储过程参数中定义嵌套表

2、声明嵌套表类型变量

示例:

DECLARE
TYPE DNameList IS TABLE OF dept.dname%TYPE;
nameList1 DNameList; 
nameList2 nameList1%TYPE;   --使用%TYPE声明嵌套表类型变量
--在存储过程参数中定义嵌套表类型变量
CREATE OR REPLACE PROCEDURE proc_name(nameList  IN DNameList)

注意:不能将嵌套表类型和嵌套表类型变量同名,大小写不同也不可,因PL/SQL不区分大小写

3、初始化嵌套表类型变量

嵌套表必须先通过构造方法初始化(索引表不需要通过构造方法进行初始化),否则嵌套表变量为NULL,在初始化中元素个数没有限制。

示例:

DECLARE
TYPE DNameList IS TABLE OF dept.dname%TYPE;
my DNameList ;
BEGIN
my:=DNameList('CORESUN','CORESUN','CORESUN'); 

注意:my变量在初始化时传入了3个参数,那么嵌套表长度就是3,以后使用时长度不够,必须通过extend函数进行扩展长度。如果在构造方法中没有传入任何参数,则嵌套表长度为0。

也可以在声明声明嵌套表类型变量的同时进行初始化,如:

my DNameList:=DNameList('CORESUN','CORESUN','CORESUN');

如果定义元素类型时没有指定NOT NULL,在构造方法中也可以传入NULL,如:

my:=DNameList('CORESUN',NULL,'CORESUN');

4、引用嵌套表类型变量

通过嵌套表变量和圆括号里的索引值来引用嵌套表中的元素,嵌套表的下标是从1开始编号,最大至231 ,下标可以是一个整数,也可以是整数表达式。

上一页  1 2 3 4 5 6  下一页

Tags:PL SQL 定义

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