基本结构
结构
PL/SQL块中可以包含子块,子块可以位于PL/SQL中任何部分。PL/SQL块的结构如下:
声明部分:声明PL/SQL用到的变量、类型、游标、局部的存储过程和函数。
DECLARE
说明:
不涉及变量声明时声明部分可以没有。- 对匿名块来说,没有变量声明部分时,可以省去DECLARE关键字。
- 对存储过程来说,没有DECLARE,AS相当于DECLARE。即便没有变量声明的部分,关键字AS也必须保留。
执行部分:过程及SQL语句,程序的主要部分。必选。
BEGIN
执行异常部分:错误处理。可选。
EXCEPTION
结束。
END;
/
须知:
禁止在PL/SQL块中使用连续的Tab,连续的Tab可能会造成在使用gsql工具带“-r”参数执行PL/SQL块时出现异常。
B兼容模式下PL/SQL块除上述结构外,新增以下结构:
执行部分:过程及SQL语句,程序的主要部分。必选。
BEGIN
声明部分:声明用户自定义状态、游标、异常处理。
DECLARE
结束。
END;
/
分类
PL/SQL块可以分为以下几类:
- 匿名块:动态构造,只能执行一次。语法请参考图1。
- 子程序:存储在数据库中的存储过程、函数、操作符和高级包等。当在数据库上建立好后,可以在其他程序中调用它们。