PLSQL Language Referenc-PL/SQL集合和记录-集合变量赋值-数据的兼容性
集合变量赋值 有3种方式给集合变量赋值: n 调用构造器创建一个集合并将创建的集合赋值给集合变量。 n 使用赋值语句将另外已经存在的集合变更赋值给集合变量 n 以OUT,IN OUT类型参数将集合变量传递给子程序,在子程序内部对其进行赋值。 数据的兼容性 只当具有相同的数据类型...
PLSQL Language Referenc-PL/SQL集合和记录-集合构造器
集合构造器 它只适合于可变数组和嵌套表。关联数组没有构造器。 集合构造器,是一个系统定义的与集合类型具有相同名称的函数,该函数可以返回该集合类型的集合。 ([value[,value]...]) TYPEIS()OFVARCHAR215 :=();-- ...
PLSQL Language Referenc-嵌套表-嵌套表和数组间的重要区别(正确地使用嵌套表)
嵌套表和数组间的重要区别 从概念上讲嵌套表好像是一个有任意数量元素的一维数组,然而二者在以下方面是不同的: n 数组有声明数量的元素,而嵌套表没有,嵌套表的大小可以动态增长。 n 数组总是密集的。一个嵌套表在开始是密集的,但从中删除元素后,它就变成稀疏的了。 正确地使用...
PLSQL Language Referenc-PL/SQL集合和记录-嵌套表
嵌套表 在数据库中,嵌套表是一种以不确定的顺序存储不确定数量的行的列类型。当从数据库获取嵌套表的值到PL/SQL嵌套表变量中,PL/SQL给行赋予从1开始的连续的索引。使用索引可以访问嵌套表变量中的单独的行。 () 当从数据库获取并存储嵌套表的时候,嵌套表的索引和行的顺序...
PLSQL Language Referenc-PL/SQL集合和记录-可变数组-正确地使用可变数组
可变数组 是一个数组,它的元素的个数可以在0和声明的最大个数之间变动。访问可变数组中的元素: () index∈(1,元素的个数),上限值随着插入和删除元素而改动,但不能超过最大值。 数据库以单个对象存储可变数组变量,如果可变数组变量 < 4KB,则它位于表内,...
PLSQL Language Referenc-PL/SQL集合和记录-关联数组-正确地使用关联数组
正确地使用关联数组 关联数组适用于: n 一个相对较小的查找表,每当调用子程序或初始化声明它的包的时候,都可以在内存中被构造。 n 与数据库之间传递集合。 声明关联数组类型的子程序形参,对于Oralce OCI或Oracle预编译器,绑定宿主数组到实参。PL/SQL自动在宿主的数组和使用PLS_INTEGER...
PLSQL Language Referenc-PL/SQL集合和记录-NSL参数值对字符串索引的关联数组的影响
NSL参数值对字符串索引的关联数组的影响 Natongal Language Support(NLS)参数,例NLS_SORT,NLS_COMP,NLS_DATE_FORMAT会影响用字符串索引的关联数组。 (1)在填充了关联数组之后改变NLS参数的值 初始化参数NLS_SORT和NLS_COMP决定用字符索引的关联数组的索引的存储存顺序。如果在填充了用字符串索引的关联...
PLSQL Language Referenc-PL/SQL集合和记录-关联数组-声明关联数组常量
声明关联数组常量 声明关联数组常量,必须创建一个函数,该函数可以使用初始值来填充关联数组,而后在常量的声明中调用该函数。 CREATEORREPLACEPACKAGEAUTHIDIS --关联数组 My_AA ()INDEXBYPLS_INTEGER --该函数相当于可变数组和嵌套表的构造器  ...
PLSQL Language Referenc-PL/SQL集合和记录-关联数组
关联数组 原来称为PL/SQL表或索引表,是键值对的集合。每个键一个唯一索引,用于确定关联的值。 变量名) 索引是有序排列,而不是按创建的顺序。对于字符串类型的索引,排序的顺序由NLS_SORT和NLS_COMP初始化参数决定。 像数据库表: n 是空的(但不是NULL),...
PLSQL Language Referenc-PL/SQL集合和记录-集合类型
PL/SQL集合和记录 复合数据类型存储的值具有内部结构,可以将整个复合变量作为参数传递给子程序,可以单独地访问复合变量中的内部结构。内部结构可以是scalar或仍是复合类型。PL/SQL允许定义2种类型的复合数据类型:集合和记录。 在集合中,内部结构总是具有相同的数据类型,被称为元素。可以通过下标访问集合中...
PLSQL Language Referenc-PL/SQL控制语句-顺序控制语句-NULL
顺序控制语句 GO TO 能不用就不用吧。 NULL NULL只是把控制权传递给后面的语句。 NULL语句的用处: n 为GOTO语句提供一个目标 n 通过使条件语句的含义和行为更加清晰来提高可读性 n 创建占位符和子程序桩 n 表明清楚这种可能性,但不需要进行处理。 ...
PLSQL Language Referenc-PL/SQL控制语句-循环语句-WHILE循环
WHILE循环 label condition ENDLOOP[]; BOOLEAN:=FALSE WHILELOOP DBMS_OUTPUTPUT_LINE '该行不会输出); do...
PLSQL Language Referenc-FOR循环-FOR循环中的EXIT WHEN和CONTINUE WHEN
FOR循环中的EXIT WHEN和CONTINUE WHEN %; c1 employees OPEN; FORIN1..10LOOP c1 v_employees EXITWHEN%; &nb...
PLSQL Language Referenc-PL/SQL控制语句-循环语句-FOR循环-下限和上限
下限和上限FOR循环语句的上下限可以是数字的字面量、变量或表达式。如果上限或下限有一个不是数字值,则会引起VALUE_ERROR异常。 DECLARE first INTEGER := 1; last IN...
PLSQL Language Referenc-PL/SQL控制语句-循环语句-FOR循环-FOR循环中的索引
FOR循环中的索引 FOR循环中的索引被隐式地声明为INTEGER类型的变量且是局部的;循环中的语句可以读取该变量的值,但不能改变它;循环之外的语句不能引用该变量;循环执行之后,该变量消失。 ...
PLSQL Language Referenc-PL/SQL控制语句-循环语句-FOR循环
label lower_boundupper_bound ENDLOOP[];BEGIN DBMS_OUTPUTPUT_LINE '下限' i .(); ; .( = 上限); FORIN2..2LOOP &...
PLSQL Language Referenc-PL/SQL控制语句-循环语句-CONTINUE WHEN
CONTINUEWHEN NUMBER:=0 LOOP DBMS_OUTPUTPUT_LINE '循环之中 ()); x x ; x ; &nb...
PLSQL Language Referenc-PL/SQL控制语句-循环语句-CONTINUE
CONTINUE NUMBER:=0 LOOP-- CONTINUE执行后,接着从这里继续执行 DBMS_OUTPUTPUT_LINE '循环之中 ()); x x ; ...
PLSQL Language Referenc-PL/SQL控制语句-循环语句-EXIT WHEN
EXITWHEN NUMBER:=0 LOOP DBMS_OUTPUTPUT_LINE'循环之中 ()); x x ;--避免无限循环 x ; ...
PLSQL Language Referenc-PL/SQL控制语句-循环语句-基本循环(EXIT语句)
循环语句 循环语句有:基本循环、FOR循环、光标FOR循环、WHILE循环。 退出循环的语句:EXIT,EXIT WHEN 退出当次迭代的语句:CONTINUE,CONTINUE WHEN 基本循环 label ENDLOOP[];DECLARE x ;BEGIN .(:...