【问题标题】:scalar variable and composite variable in PL/SQL oraclePL/SQL oracle 中的标量变量和复合变量
【发布时间】:2012-03-30 13:40:03
【问题描述】:

我是 Oracle 新手,刚刚读到标量变量没有内部组件,而复合变量有内部组件。

您能解释一下这个内部组件是什么吗? 它是如何工作的?它的目的是什么?

【问题讨论】:

    标签: oracle plsql internals sqldatatypes


    【解决方案1】:

    您需要阅读有关 PL/SQL 记录和集合的文档:

    http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/composites.htm

    复合变量的内部组件只是构成变量本身的结构。

    例如

    在一个集合中,内部组件总是有相同的数据 类型,称为元素。您可以访问 a 的每个元素 集合变量的唯一索引,语法如下: 变量名(索引)。要创建集合变量,您可以 定义一个集合类型,然后创建该类型的变量或 使用 %TYPE。

    在一条记录中,内部组件可以有不同的数据类型, 并且被称为字段。您可以访问记录变量的每个字段 按其名称,使用以下语法:variable_name.field_name。创建一个 记录变量,您可以定义一个记录类型,然后创建一个 该类型的变量或使用 %ROWTYPE 或 %TYPE。

    例如,如果我创建一个记录类型:

    TYPE person_rectype IS RECORD (
         forename VARCHAR2(30),
         surname  VARCHAR2(30),
         sex      VARCHAR2(1),
         dob      DATE
    );
    

    然后声明该类型的变量:

    applicant_rec person_rectype;
    

    变量applicant_rec 具有内部组件forenamesurnamesexdob,它们是VARCHAR2DATE 数据类型。

    希望对你有帮助...

    【讨论】:

      猜你喜欢
      • 2015-07-08
      • 2016-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-20
      • 1970-01-01
      相关资源
      最近更新 更多