一 declare的使用
你在写存储过程的时候是
CREATE OR REPLACE P_NAME IS
变量定义
BEGIN
.....
END P_NAME;
之后一编译就成了存储过程,并保存在数据库中;
但是如果仅仅是调试用,在sqlplus中或是在PL/SQL Developer的sql窗口、命令窗口自己随便写一段代码以完成某项操作,那么就是
DECLARE
变量定义
BEGIN
......
END;
-- PL/SQL 基本写法
-- 说明:声明、异常处理部分为可选,视具体程序而定
-- 博客记录点滴 http://www.linuxidc.com 转载注明出处
DECLARE -- 声明变量
A INTEGER;-- 只声明
B FLOAT := 0;-- 带赋值的声明
C FLOAT;
BEGIN -- 可执行语句开始
DBMS_OUTPUT.put_line('开始执行可执行语句块![http://www.linuxidc.com转载注明出处]');
A := 1.5;
DBMS_OUTPUT.put_line('A=' || A);
DBMS_OUTPUT.put_line('B=' || B);
C := A / B; -- 会引发分母为0的异常,下面的两条输出语句将无法执行
DBMS_OUTPUT.put_line('C=' || C);
DBMS_OUTPUT.put_line('可执行语句块执行完毕![http://www.linuxidc.com转载注明出处]');
EXCEPTION -- 异常处理
WHEN OTHERS THEN
DBMS_OUTPUT.put_line('[PL/SQL 基本写法]中出现异常,错误代码:ORA'||sqlcode);
END; -- 可执行语句结束
/ -- 该符号表示执行这段PL/SQL代码
执行后的输出:
开始执行可执行语句块![http://blog.youkuaiyun.com/ls_man转载注明出处]
A=2
B=0
[PL/SQL 基本写法]中出现异常,错误代码:ORA-1476