`
yhef
  • 浏览: 69284 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

ORACLE数据库集合类型示例

阅读更多
declare
  --------类型定义
  --类型1
  type t_array1 is varray(20) of varchar2(30);
  --类型2
  type t_array2 is table of varchar2(20) index by binary_integer;
  --类型3
  type t_array3 is table of varchar2(30) index by varchar2(10);

  --------变量定义
  --数组1,初始化赋值
  l_array1 t_array1 := t_array1('a', 'b', 'c', 'd', 'e');
  --数组2
  l_array2 t_array2;
  --数组3
  l_array3 t_array3;
  --数组3 key
  l_array3_key varchar2(10);
begin

  dbms_output.put_line('*********Array1 Start**************');
  for i in 1 .. l_array1.count loop
    dbms_output.put_line('Index:' || i || ',Value:' || l_array1(i));
  end loop;

  l_array2(1) := '中';
  l_array2(2) := '国';
  l_array2(3) := '人';
  --跳过4
  l_array2(5) := '很多';
  l_array2(100) := '很多的';
  l_array2(6) := '最后一个值';
  dbms_output.put_line('*********Array1 Finish*************');
  dbms_output.put_line('*********Array2 Start**************');
  for i in 1 .. l_array2.count loop
  
    begin
      dbms_output.put_line('Index:' || i || ',Value:' || l_array2(i));
    exception
      when others then
        dbms_output.put_line('Exception:' || sqlerrm || ',When index:' || i);
        goto con;
    end;
    <<con>>
    null;
  end loop;

  dbms_output.put_line('*********Array2 Finish*************');

  l_array3('北京') := '区号010';
  l_array3('广州') := '区号020';
  l_array3('上海') := '区号021';
  l_array3('天津') := '区号022';
  l_array3('重庆') := '区号023';

  dbms_output.put_line('*********Array3 Start**************');
  l_array3_key := l_array3.first;
  loop
    exit when l_array3_key is null;
    dbms_output.put_line(l_array3_key || ',' || l_array3(l_array3_key));
    l_array3_key := l_array3.next(l_array3_key);
  end loop;
  dbms_output.put_line('*********Array3 Finish*************');
end;





----结果如下
*********Array1 Start**************
Index:1,Value:a
Index:2,Value:b
Index:3,Value:c
Index:4,Value:d
Index:5,Value:e
*********Array1 Finish*************
*********Array2 Start**************
Index:1,Value:中
Index:2,Value:国
Index:3,Value:人
Exception:ORA-01403: no data found,When index:4
Index:5,Value:很多
Index:6,Value:最后一个值
*********Array2 Finish*************
*********Array3 Start**************
上海,区号021
北京,区号010
天津,区号022
广州,区号020
重庆,区号023
*********Array3 Finish*************
分享到:
评论

相关推荐

    《Oracle数据库编程经典300例》PDF

    《Oracle数据库编程经典300例》是一本深入解析...总之,《Oracle数据库编程经典300例》是一本全面覆盖Oracle数据库开发的实用教程,通过大量的实际操作示例,读者可以逐步提升在Oracle环境下的编程能力和问题解决能力。

    list_view打包存储oracle数据库

    以下是一个简化的Delphi代码示例,展示了如何将`list_view`数据存储到Oracle数据库: ```delphi uses ..., OracleDB; procedure SaveListViewData(const ListView: TListView; const TableName: string); var ...

    Oracle数据库基础知识

    Oracle数据库包含多种类型的进程,如用户进程、服务器进程、后台进程等,这些进程协同工作,提供数据库服务。 ##### 1.3 存储管理 Oracle数据库通过逻辑和物理结构来组织和存储数据,逻辑结构包括表空间、段、区和...

    oracle数据库开发工具

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其强大的功能和高效的数据处理能力深受企业和开发者喜爱。在Oracle数据库的开发过程中,PL/SQL(Procedural Language/Structured Query Language)是一种不...

    oracle数据库基本语句

    根据提供的文件信息,本文将对Oracle数据库中的基本SQL语句进行详细介绍,并结合示例代码来解释如何在PL/SQL环境中使用这些语句。 ### 一、Oracle数据库基本SQL语句 #### 1. 创建用户(Create User) 创建用户是...

    数据库开发 Oracle数据库 SQL开发教程 第08章 集合运算(共20页).pdf

    Oracle数据库的SQL开发教程中,第08章主要讲解了集合运算,这是SQL查询中的一个重要概念,用于合并来自多个查询的结果集。集合运算包括联合(UNION)、完全联合(UNION ALL)、相交(INTERSECT)和相减(MINUS)四种...

    ORACLE数据库中插入大字段数据的解决方法

    在提供的文件`MysqlToOracle.java`中,可能包含了将MySQL数据转换并插入到ORACLE数据库的代码示例。这个过程可能涉及到数据类型转换、连接管理、事务控制以及上述的性能优化策略。在实际应用中,需要确保代码正确...

    oracle数据库和plsql语法练习

    通过这些PPT,初学者可以了解到如何设计和操作Oracle数据库,包括数据类型、查询语言(如SELECT语句)、DML(INSERT、UPDATE、DELETE)操作以及DDL(CREATE、ALTER、DROP)语句。 "plsql.txt"文件可能包含PL/SQL...

    oracle数据库连接的jdbc和jar包

    以下是一个简单的示例,展示了如何使用JDBC连接Oracle数据库: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class OracleJdbcConnect { public ...

    C#程式使用oracle数据库

    当结合Oracle数据库时,C#可以成为一个强大的工具,用于构建数据驱动的应用程序。Oracle数据库是全球领先的大型关系型数据库系统,它提供了丰富的功能和高性能的数据存储与管理。 在“C#程式使用oracle数据库”的...

    java操作Oracle数据库——ARRAY、TABLE类型批量入库

    Oracle数据库提供了一些高级数据类型,如ARRAY(数组)和TABLE(表),这些数据类型允许我们进行批量数据操作,从而提高性能。本文将深入探讨如何利用Java操作Oracle数据库中的ARRAY和TABLE类型,实现批量入库。 ...

    Oracle数据库基础知识 ISSUE1.0

    ### Oracle数据库基础知识 ISSUE1.0 #### 课程说明 ##### 课程介绍 本课程主要针对的是Oracle 8.1.7版本的数据库基础知识,旨在帮助学员全面了解Oracle数据库的架构与管理方法。通过一系列深入浅出的教学内容,...

    Oracle数据库经典学习教程

    - **定义**:用于与Oracle数据库进行交互的工具集合,包括但不限于SQL*Plus、Oracle Enterprise Manager等。 - **作用**:这些工具能够帮助开发者或管理员更高效地管理和操作Oracle数据库。 ##### 4. Oracle服务 - ...

    Oracle数据库基础知识 ISSUE1.0.doc

    文档中还列举了一系列常用的Oracle数据库管理任务示例,包括数据文件的恢复、session的管理、字符集的修改、表空间的扩展、无效对象的查询等,这些示例涵盖了数据库日常管理的各个方面,对于DBA来说是非常实用的参考...

    基于oracle数据库的PLSQL编程以及存储过程的创建和使用资料.zip

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其强大的功能和高效的数据处理能力深受企业和开发者的青睐。在Oracle数据库中,PL/SQL(Procedural Language/Structured Query Language)是一种结合了SQL...

    力控与Oracle数据库的连接.pdf

    力控与Oracle数据库的连接是实现数据交互的关键步骤,尤其在工业自动化和监控系统中,力控(ForceControl)作为一款实时数据库系统,需要与Oracle这样的大型关系型数据库进行高效的数据交换。以下将详细介绍力控与...

Global site tag (gtag.js) - Google Analytics