2.DB2 存储过程

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/* 1. 参数定义,
就是创建存储过程的时候,要定义哪些参数,
这些参数可以是输入参数,也可以是输出参数,还可以是输入输出参数。
这些参数用 in, out,inout 来表示
*/
create or replace procedure [procedure_name](in [param_name_1] varchar(10), out [param_name_2] varchar(5))
begin
/* 2. 定义变量
在db2的存储过程中,我们可以使用关键字DECLARE来定义变量,然后在后续程序过程中使用该变量来处理逻辑。
当然我们一般在定义变量的时候可以指定一个初始值。
*/
declare [variable_name_1] char(5) default '00000'
declare [variable_name_2] int default 0

/* 3. 异常处理
存储过程中要有能够处理程序发生异常时的处理流程。因为我们有时在处理程序的时候,时不时会因错误的原因或者特殊的情况出错。如果没有异常处理的话,很有可能找不出错误的缘由。所以要进行异常处理。
*/
declare exit handler for sqlexception, sqlwarning
p1: begin
set [variable] = [value];
rollback;
end

/* 4. 处理过程
*/
[变量赋值]
[执行 SQL 语句]

end