集合方法是ORACLE所提供的用于操纵集合变量的内置函数或过程,其中EXISTS,COUNT,LIMIT,FIRST,NEXT,PRIOR和NEXT是函数,而EXTEND,TRIM和DELETE是过程。集合方法的调用方式:
collection_name.method_name[(parameter)]
注意,集合方法只能在PL/SQL语句中使用,不能在SQL语句中调用。另外集合方法EXTEND和TRIM只适用嵌套表和VARRAY。
该方法用于确定集合元素是否存在,如果集合元素存在,则返回TRUE;如果集合元素不存在,则返回FALSE。适用该集合方法的示例如下:
DECLARE
TYPE ename_table_type IS TABLE OF scott.emp.ename%TYPE;
ename_table ename_table_type;
BEGIN
IF ename_table.EXISTS(1) THEN
ename_table(1):='SCOTT';
ELSE
dbms_output.put_line('必须初始化集合元素');
END IF;
END;
该方法用户返回当前集合变量中的元素的总个数。如果集合元素存在数值,则统计结构会包含该元素;如果集合元素为NULL,则统计结果不会包含该元素。
示例:
DECLARE
TYPE ename_table_type IS TABLE OF scott.emp.ename%TYPE
INDEX BY BINARY_INTEGER;
ename_table ename_table_type;
BEGIN
ename_table(-5):='scott';
ename_table(1):='scott1';
ename_table(5):='scott2';
ename_table(3):='scott3';
dbms_output.put_line(ename_table.count);
END;
该方法用户返回集合元素的最大个数。因为嵌套表和索引元素的个数没有限制,所以调用该方法会返回NULL;而对于VARRAY来说,该方法会返回VARRAY所允许的最大元素个数。
FIRST方法用于返回集合变量第一个元素的下标,而LAST返回集合变量最后一个元素下标。
PRIOR方法用于返回当前集合元素的前一个元素的下标,而NEXT方法则是返回当前集合元素的后一个元素的下标。
该方法用户扩展集合变量的尺寸,并为他们增加元素。该方法只能适用与嵌套表和VARRAY。
EXTEND--用于为集合变量添加一个NULL元素
EXTEND(n)--用于为集合变量添加n个NULL元素
EXTEND(n,i)--用于为集合变量添加n个元素,元素值与底i个相同
该方法用于从集合尾部删除元素,有TRIM和TIME(n)两种调用格式。TRIM用于从尾部删除一个元素;而TRIM(n)用户从集合尾部删除n个元素。
该方法用于删除集合元素,但该方法只适用与嵌套表和索引表,而不适用于VARRAY。
DELETE--用于删除集合变量所有元素;
DELETE(n)--用于删除集合变量第n个元素;
DELETE(m,n)--用于删除集合变量中从m到n之间的所有元素;
分享到:
相关推荐
第五章 PL/SQL集合与记录 第六章 PL/SQL与Oracle间交互 第七章 控制PL/SQL错误 第八章 PL/SQL子程序 第九章 PL/SQL包 第十章 PL/SQL对象类型 第十一章 本地动态SQL 第十二章 PL/SQL应用程序性能调优
《Oracle PL/SQL程序设计(第5版)》不但介绍了大量的Oracle 11g的PL/SQL新性能,还提供了许多优化PL/SQL性能的新方法。 《Oracle PL/SQL程序设计(第5版)》结构清晰,示例丰富,实践性强,适用于Oracle数据库开发人员...
PL/SQL Developer允许您在某些特定的条目集合范围之内进行工作,而不是在完全的数据库或架构之内。这样,如果需要编译所有工程条目或者将工程从某个位置或数据库移动到其他位置时,所需工程条目的查找就变得比较简单...
sql是关系数据库的基本操作语言 它是应用程序与数据库进行交互操作的接口 pl/sql是oracle特有的编程语言 它不仅具有过程编程语言的基本特征 循环 条件分支等 而且还具有对象编程语言的高级特征 重载 继承等 ...
《oracle pl/sql程序设计(第5版)》不但介绍了大量的oracle 11g的pl/sql新性能,还提供了许多优化pl/sql性能的新方法。 简单目录 《oracle pl/sql程序设计(第5版)(上册)》 (上册) 第1部分 pl/sql编程 第1章 pl/...
PL/SQL Developer允许您在某些特定的条目集合范围之内进行工作,而不是在完全的数据库或架构之内。这样,如果需要编译所有工程条目或者将工程从某个位置或数据库移动到其他位置时,所需工程条目的查找就变得比较简单...
pl/sql集合相关例子,可做参考,包括数组,记录,表,对象的各种使用方法和相关函数
集合,外部过程,服务器端结果缓存,使用VPD强制行级安全性,处理大型对象和SecureFiles等功能为PL / SQL专业人员构建了一个具体平台。除了编程之外,本书还提供了有关开发工具SQL Developer的使用的工具建议,采用...
PL/SQL Developer允许您在某些特定的条目集合范围之内进行工作,而不是在完全的数据库或架构之内。这样,如果需要编译所有工程条目或者将工程从某个位置或数据库移动到其他位置时,所需工程条目的查找就变得比较简单...
第五章 PL-SQL集合与记录(1) 第六章 PL-SQL集合与记录(2) 第七章 PL-SQL与Oracle间交互 第八章 控制PL-SQL错误 第九章 PL-SQL子程序 第十章 PL-SQL包 第十一章 PL-SQL对象类型 第十二章 本地动态SQL 第十三章 PL...
读者不仅可以掌握oracle常用工具oracle universal installer、net comfiguration assistant、sql developer、sql*plus的作用及使用方法,而且可以掌握sql语句和pl/sql的各种基础知识和高级特征(记录类型、集合类型...
通过学习本书,读者不仅可以掌握PL/SQL的基础编程知识(嵌入SQL语句和编写子程序),而且还可以掌握PL/SQL的所有高级开发特征(使用记录类型、集合类型、对象类型和大对象类型)。另外,本书还为应用开发人员提供了大量...
《Oracle PL/SQL程序设计(第5版)》不但介绍了大量的Oracle 11g的PL/SQL新性能,还提供了许多优化PL/SQL性能的新方法。 《Oracle PL/SQL程序设计(第5版)》结构清晰,示例丰富,实践性强,适用于Oracle数据库开发人员...
PL/SQL集合 23 嵌套表 24 使用集合 25 集合的方法 28 关于集合之间的比较 29 3.PL/SQL单行函数和组函数详解 29 单行字符串函数 30 单行转换函数 37 SQL中的组函数 40 嵌套函数 42 4.Oracle数据库数据对象分析(上)...
读者不仅可以掌握Oracle常用工具Oracle Universal Installer、Net Comfiguration Assistant、SQL Developer、SQL*Plus的作用及使用方法,而且可以掌握SQL语句和PL/SQL的各种基础知识和高级特征(记录类型、集合类型...
PL/SQL Developer允许您在某些特定的条目集合范围之内进行工作,而不是在完全的数据库或架构之内。这样,如果需要编译所有工程条目或者将工程从某个位置或数据库移动到其他位置时,所需工程条目的查找就变得比较简单...
读者不仅可以掌握oracle常用工具oracle universal installer、net comfiguration assistant、sql developer、sql*plus的作用及使用方法,而且可以掌握sql语句和pl/sql的各种基础知识和高级特征(记录类型、集合类型...
PL/SQL Developer允许您在某些特定的条目集合范围之内进行工作,而不是在完全的数据库或架构之内。这样,如果需要编译所有工程条目或者将工程从某个位置或数据库移动到其他位置时,所需工程条目的查找就变得比较简单...