`
zhujiang520
  • 浏览: 145878 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ORACLE 之数组定义

阅读更多
固定数组  
declare  
  type type_array is varray(10) of varchar2(20);     --一维数组,字符串类型
var_array type_array:=type_array('ggs','jjh','wsb','csl','dd','bb');  
begin  
  for i in 1..var_array.count loop                           --数组的长度用count
      dbms_output.put_line(var_array(i));  
  end loop;  
end;  



COUNT             返回集合中元素的个数   
DELETE            删除集合中所有元素   
DELETE(x)         删除元素下标为x的元素      对VARRAY非法    
DELETE(x,y)       删除元素下标从X到Y的元素   对VARRAY非法    
EXIST(x)          如果集合元素x已经初始化,则返回TRUE, 否则返回FALSE   
EXTEND            在集合末尾添加一个元素      对Index_by非法   
EXTEND(x)         在集合末尾添加x个元素       对Index_by非法   
EXTEND(x,n)       在集合末尾添加元素n的x个副本 对Index_by非法   
FIRST             返回集合中的第一个元素的下标号,对于VARRAY集合始终返回1。   
LAST              返回集合中最后一个元素的下标号, 对于VARRAY返回值始终等于COUNT.   
LIMIT             返回VARRY集合的最大的元素个数   Index_by集合和嵌套表无用   
NEXT(x)           返回在第x个元素之后及紧挨着它的元素值,如果x是最后一个元素,返回null.   
PRIOR(x)          返回在第x个元素之前紧挨着它的元素的值,如果x是第一个元素,则返回null。   
TRIM              从集合末端开始删除一个元素  对于index_by不合法   
TRIM(x)           从集合末端开始删除x个元素  
var_array.next(3);   //返回var_array(3)
可变数组  
declare   
type type_array is table of varchar2(20) index by binary_integer;  
var_array type_array;  
begin   
var_array(1):='aa';  
var_array(2):='bb';                     --下标必须是连续的
    
for i in 1..var_array.count loop  
dbms_output.put_line( var_array(i));  
end loop;  
    
end;  

declare
type type_array is table of t_user%rowtype index by binary_integer;   --类似二维数组
var_array type_array;
begin
     select * bulk collect into var_array from t_user;
     for i in 1..var_array.count loop
         dbms_output.put_line(var_array(i).user_id);          --二维数组的访问
         dbms_output.put_line(var_array(i).username);
     end loop;
end;
分享到:
评论

相关推荐

    ORACLE存储过程中定义数组并且判断某值是否在数组中.txt

    ORACLE存储过程中定义数组并且判断某值是否在数组中。有例子可執行、 、有例子可執行、

    oracle中的数组使用

    oracle中的数组使用 oracle中的数组使用 oracle中的数组使用 oracle中的数组使用 oracle中的数组使用 oracle中的数组使用

    oracle数组定义与使用.pdf

    oracle数组定义与使用.pdf

    Oracle数组的使用

    oracle中存储过程和定义方法时使用的数组形式

    Oracle定义联合数组及使用技巧

    在ORACLE 10G中,以及在ORACLE 10G以前的版本中,都可以使用数字索引联合数组。另外,在ORACLE 10G中,还可以使用具有唯一性的变长字符串作为联合数组的索引。 可以使用任意的整数作为联合数组的索引

    Oracle中使用SQL MODEL定义行间计算

    利用 SQL MODEL 子句,您可以根据查询结果定义多维数组,然后将规则应用于该数组以计算新值。这些规则可以是复杂的相互依赖的计算。与外部解决方案相比,通过将高级计算集 成到数据库中,可以大幅度提升性能、可伸缩...

    Oracle11gPLSQLProgramming

     ·定义和部署varray 、嵌套表和联合数组数据类型;  ·处理外部例程、对象类型、大对象和安全文件;  ·使用DBMS_ALERT 和DBMS_PIPE 在并行会话间通信;  ·通过Oracle Net Services 和PL/SQL 包装器调用外部...

    字符串分割成数组函数(plsql function)

    将字符串分割成数组: ...用法:可以将分割结果做为一个数组或者数据库表列来使用 select * from scott.emp where empno in (select column_value from table(my_split('7369,7499,7521,7844',',')));

    Oracle.Database.11g.PL_SQL.Programming

     ·定义和部署varray 、嵌套表和联合数组数据类型;  ·处理外部例程、对象类型、大对象和安全文件;  ·使用DBMS_ALERT 和DBMS_PIPE 在并行会话间通信;  ·通过Oracle Net Services 和PL/SQL 包装器调用外部...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。  拉里•埃里森  就业前景 从就业与择业的...

    精通Oracle.10g.PLSQL编程

    使用复合数据类型 8.1 PL/SQL记录 8.1.1 定义PL/SQL记录 8.1.2 使用PL/SQL记录 8.2 PL/SQL集合 8.2.1 索引表 8.2.2 嵌套表 8.2.3 变长数组(VARRAY) 8.2.4 PL/SQL记录表...

    Oracle8i_9i数据库基础

    第一部分 Oracle SQL*PLUS基础 23 第一章 Oracle数据库基础 23 §1.1 理解关系数据库系统(RDBMS) 23 §1.1.1 关系模型 23 §1.1.2 Codd十二法则 24 §1.2 关系数据库系统(RDBMS)的组成 24 §1.2.1 RDBMS 内核 24...

    oracle的pl-sql源代码

    在学习PL/SQL时的编的一些练习! 包括PL/SQL的数组类型的使用、 游标的各种用法、文件的使用、异常的定义和处理等

    springmybatis

    mybatis实战教程mybatis in action之一开发环境搭建 mybatis实战教程mybatis in action之二以接口的方式编程 mybatis实战教程mybatis in action之三实现数据的增删改查 mybatis实战教程mybatis in action之四实现...

    Oracle 10g 开发与管理

    (2)定义记录表类型(联合数组) 60 7.6 条件判断语句 61 (一)If语句 61 (二)Case语句 62 7.7循环语句 63 1.“直到”循环 63 2.当型循环(While) 63 3.计数型循环(For) 63 7.8游标 64 (一)隐式游标 64 1....

    PLSQL高级编程资料

    1.3.1 定义变长数组 1.3.2 扩展变长数组 1.4 批绑定 1.5 集合的异常处理 第二章 触发器 2.1 触发器的创建 2.2 触发器的管理 2.3 触发器的新功能 2.4 替代触发器 2.5 触发器的局限性 第三章 对象 3.1 对象的定义 3.2 ...

    操作Oracle的php类

    用】: Oracle公用函数类 // 【作 者】: 天灰 // // 【最后修改日期】: 2001/05/11[cxx] // 【变量定义规则】:‘C_’=字符型,‘I_’=整型,‘N_’=数字型,‘L_’=布尔型,‘A_’=数组型 //

    oracle详解

    COMMIT 提交数组插入 (N) ROWS 导入数据行 (Y) PARFILE 参数文件名 LOG 屏幕输出的日志文件 CONSTRAINTS 导入限制 (Y) DESTROY 覆盖表空间数据文件 (N) INDEXFILE 将表/索引信息写入指定的文件 SKIP_UNUSABLE_...

    PL/SQL学习笔记

    联合数组不需要定义长度,他能容纳的元素最大数量是-214483647-到214483647 联合数组的索引不是连续的,只要在上面的范围内就可以 嵌套表示例代码: declare --声明嵌套表数据类型 type mytype is table of varchar...

Global site tag (gtag.js) - Google Analytics