SQL PL基本概念

--声明变量
--1.语法:
--declare <varible-name> <data-type> <default-constant>默认不变
--declare 变量名 数据类型 常量值
--2.举例:
--declare x,y int default 0;  //定义一个x,y的变量,默认值为0
--declare myname varchar(10);
--declare z decimal(9,2) default 0.0;
--3.赋值:
--方法一:使用set语句
--方法二:使用values into语句
--方法三:使用select into语句
--set x=10;
--set y=(select sum(c1) from T1);
--values 10 into x;
--select sum(c1) into y from T1;
--4.回话全局变量
--DB2支持会话全局变量。它与一个特定的会话相关联,它对于这个会话中的每个存储过程都是全局的
--会话全局变量是在存储过程之外声明的。
--语法:
--create variable var_name datatype [default value]
--create 变量名 数据类型 【默认值】
--create varible myvar interger default 0;
--数组
--DB2从9.5开始支持数组,可以在存储过程和应用程序中使用数组,但不能再定义表的时候使用数组
--1.定义数组
--语法:create type <array-type-name> as <data-type> array[integer-constant]
--create type 数组类型名 as 数据类型 array[整型常量值]
--create type nar as integer array[100]
--create type myname as varchar(30) array[];
--声明数组
--declare <array-name> <array-type-name>
--declare mynumber nar;
--declare namearr mynames;
--declare nameArr mynames;
--赋值
--使用set语句
--使用values into语句
--使用select into语句
--使用ARRAR构造函数
--操作数组的函数
--array_delete 删除数组元素
--trim_array 从右开始删除指定数目个元素
--array_first 返回数组中第一个元素
--array_last 返回数组中最后一个元素
--array_next 返回数组下一个元素
--unnest 将数组转换为表
--连接数据库
--connect to sanple!
--定义数组
--create type intarray as integer array[10]
--创建存储过程
--create procedure test()
--begin
--declare testarr intarray;
--赋值1:set testarr=array[1,2,3,4,5,6,7,8,9,10];
--赋值2:values 1 into testarr[1], values 2 into testarr[2]
--赋值3:set testarr[1]=1
--调用
--将上面的代码保存为c:\test.sql,然后在DB2命令窗口执行如下命令
--db2 -td! -vf c:\test.sql

 

posted @ 2017-01-09 15:24  feng_kui  阅读(227)  评论(0编辑  收藏  举报