八、数据库编程(存储过程、函数)
1.存储过程
(1)变量定义:
变量名 数据类型 := 初值表达式;
(2)常量定义
常量名 数据类型 := 常量表达式;
(3)赋值语句
变量名:=表达式; 或者 set 变量名 = null;
(4)条件控制语句
IF 条件 THEN
sequence;
END IF;
IF 条件 THEN
sequence;
ELSE
sequence;
END IF;
(5)循环控制语句
LOOP
sequence;
END LOOP;
WHILE 条件 LOOP
sequence ;
END LOOP;
FOR count IN 下限...上限 LOOP
sequence;
END LOOP;
(6)游标的使用
定义写在declare和begin之间:
cursor 游标名(参数sno char(10))for select * from student where sno = 参数sno;
在begin和end使用是:
open 游标名(实参); fetch 游标名 into 变量; close 游标名;
//创建存储过程:
create or replace procedure 过程名(参数1,参数2)
as
declare
变量1;
变量2;
BEGIN
过程化SQL块;
END;
//执行存储过程:
call procedure 过程名(实参);
//修改存储过程:
alter procedure 过程名1 rename to 过程名2;
alter procedure 过程名2 complie;
//删除存储过程:
drop procedure 过程名();
2.函数
//创建函数:
create or replace function 函数名(参数1,参数2) returns 类型
as
过程化SQL块;
//执行函数:
call 函数名(实参);
//修改函数
alter function 函数名1 rename to 函数名2;
alter function 函数名2 compile;
【注】不要忘记增删改后要commit!!!!