2.
Sql 代码
1. >>-CREATE TYPE—array-type-name--AS--| data-type |--ARRAY--[---------->
2.
3. .-2147483647-------.
4. >--+------------------+--]-------------------------------------><
5. '-integer-constant-'
数组类型的名称应该用模式加以限定,并且在当前服务器上应该是惟一的。LONG VARCHAR、LONG VARGRPAHIC、XML 和用户定
义类型不能作为数组元素的数据类型。
下面是数组类型的例子:
Sql 代码
1. CREATE TYPE numbers as INTEGER ARRAY[100];
2. CREATE TYPE names as VARCHAR(30) ARRAY[];
3. CREATE TYPE MYSCHEMA.totalcomp as DECIMAL(12,2) ARRAY[];
请注意,整数 “constant” 指定数组的最大基数,它是可选的。数组元素可以通过 ARRAY-VARIABLE(subindex) 来引用,其中 subindex
必须介于 1 到数组的基数之间。
现在可以在 SQL 过程中使用这个数据类型:
3.
Sql 代码
1. CREATE PROCEDURE PROC_VARRAY_test (out mynames names)
2. BEGIN
3. DECLARE v_pnumb numbers;
4. SET v_pnumb = ARRAY[1,2,3,5,7,11];
5. SET mynames(1) =’MARINA’;
6.
7. …
8. END
DB2 支持一些操作数组的方法。例如,函数 CARDINALITY(myarray) 返回一个数组中元素的个数。
SQL PL 提供了 SET 语句来为变量和数组元素赋值。
下面是一个 SET 语句的简化的语法:
SET variable_name = value/expression/NULL;
这个变量名可以是一个本地变量、全局变量或数组元素的名称。
下面是一些例子:
评论3