易截截图软件、单文件、免安装、纯绿色、仅160KB

ORACLE PL/SQL 集合API 总结

ORACLE 10G的集合API
 
集合API方法最早是在ORACLE 8I中引入的。集合API提供了简化访问集合的方法。在ORACLE 10G以前,这些方法确实简化了对集合的访问。但是,并不是非要求掌握这些方法不可。从ORACLE 9I的INDEX-BY表到ORACLE 10G的联合数组的转换,使它们成为必须掌握的方法。
 
下面是我从书上摘录下的一些集合API,累死我了……想上网找个图还没有。
方法名称
说明
返回值的类型
所支持集合的类型
COUNT
COUNT方法返回的是VARRAY和嵌套表中已经分配了存储空间的元素的数目。在联合数组上使用这个方法时,它返回联合数组中元素的数目。COUNT方法可能会比VARRAY的LIMIT方法要小。
PLS_INTEGER
所有集合类型
DELETE(n)
DELETE方法带有一个重载的形式参数,形式参数的类型为PLS_INTEGER、VARCHAR2或LONG类型。这个形式参数对应的是集合中元素的下标。它是一个过程,没有返回值。
无返回值
所有集合类型
DELETE(n,m)
DELETE方法带有一个重载的形式参数,形式参数的类型为PLS_INTEGER、VARCHAR2或LONG类型。这两个形式参数分别对应的是最小和最大下标。这两个参数设定了集合中元素的包含范围。它是一个过程,没有返回值。
无返回值
所有集合类型
EXISTS(n)
EXISTS方法判断某个元素是否存在于集合中。它带有一个重载的形式参数,形式参数的数据类型为PLS_INTEGER、VARCHAR2或LONG类型。这个形式参数对应的是集合中元素的下标。即使这个集合是一个空元素集合,调用EXISTS方法也不会引发COLLECTION_IS_NULL异常
TRUE或FALSE
所有集合类型
EXTEND
EXTEND方法为集合中的新元素分配存储空间。它用在向集合添加值以前,为该值分配存储空间。如果试图分配空间的元素超过了VARRAY的LIMIT返回值,该方法就会失败。
没有返回值
VARRAY或嵌套表
EXTEND(n)
EXTEND方法为集合中的多个新元素分配存储空间。它带有一个形式参数,形式参数的数据类型为PLS_INTEGER类型。它用在向集合添加值以前,为该值分配存储空间。如果试图分配空间的元素超过了VARRAY的LIMIT返回值,该方法就会失败。
没有返回值
VARRAY或嵌套表
EXTEND(n,i)
EXTEND方法为集合中的多个新元素分配存储空间。它带有两个形式参数,这两个形式参数类型均为PLS_INTEGER类型。第一个参数表示要添加多少个新元素,第二个参数是引用集合中已有的元素,该元素会被复制到新元素上。如果试图分配空间的元素超过了VARRAY的LIMIT返回值,该方法就会失败。


相关文档:

oracle to_date,to_char,trunc,decode用法

select decode('X','Q','变量1','变量2') from dual
 select sysdate,to_char(sysdate,’yyyy-mm-dd hh24:mi:ss’) from dual
 
 select to_date(’2003-10-17 21:15:37’,’yyyy-mm-dd hh24:mi:ss’) from dual  
日期格式参数 含义说明
D 一周中的星期几
DAY 天的名 ......

Oracle数据库备份技巧

  oracle% sqlplus /nolog
  SQL> conn / as sysdba
  数据库的物理文件
  数据文件
  select file_name from dba_data_files;
  控制文件
  select name from v$controlfile;
  日志文件
  select member from v$logfile;
  ---------------------------------------------------------
......

ORACLE PL/SQL 记录(Record)学习笔记(二)

二、以形参的形式定义和使用记录、对象类型
在用作形式参数时,记录类型和对象类型有很多相同之处。在将它们作为游标、函数或过程的形式参数以前,事先都必须定义一个记录类型或者对象类型。
如下例所示:
 
记录
DECLARE

-- Define a record type.
TYPE individual_record IS RECORD
(individual_id ......

ORACLE PL/SQL 集合学习笔记(二)

三、嵌套表的使用方法
 
1、将嵌套表定义为PL/SQL的程序构造块
 
TYPE type_name IS TABLE OF element_type[NOT NULL];
 
如下例所示:
DECLARE

-- Define a nested table of variable length strings.
TYPE card_table IS TABLE OF VARCHAR2(5 CHAR);

-- Declare and initialize a n ......

ORACLE PL/SQL 集合学习笔记(三)

四、联合数组的使用方法
联合数组以前被称为PL/SQL表。在表中不能使用联合数组,只能将它们用作程序设计的结构体。只能在PL/SQL中访问联合数组。
注意到联合数组带来的一些关键问题是非常重要的。这些问题使我们介绍它们的用法时,需要采取一些特别的方法。这些问题包括:
联合数组不需要初始化,也没有构造函数语法。在 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号