PL/SQL oracle 中的标量变量和复合变量
Posted
技术标签:
【中文标题】PL/SQL oracle 中的标量变量和复合变量【英文标题】:scalar variable and composite variable in PL/SQL oracle 【发布时间】:2012-03-30 13:40:03 【问题描述】:我是 Oracle 新手,刚刚读到标量变量没有内部组件,而复合变量有内部组件。
您能解释一下这个内部组件是什么吗? 它是如何工作的?它的目的是什么?
【问题讨论】:
【参考方案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
具有内部组件forename
、surname
、sex
和dob
,它们是VARCHAR2
和DATE
数据类型。
希望对你有帮助...
【讨论】:
以上是关于PL/SQL oracle 中的标量变量和复合变量的主要内容,如果未能解决你的问题,请参考以下文章