PL/SQL(Procedural Language/SQL)是一种过程化语言。
PL/SQL都是以(BLOCK)块为基本单位,整个PL/SQL块分为三部分
1、声明(Declare)
2、执行(以BEGIN开头)
3、异常处理(以EXCEPTION开头)
PL/SQL的语法格式如下:
[Declare] --声明部分 可选 BEGIN --执行部分 必选 [EXCEPTION] --异常处理部分 可选 END
PL/SQL简单例子:
--========================================== --Author: Oliver QIN --Date:2015-12-13 --desc:写一个PL/SQL块,计算两个数字的和与差之商 --========================================== SQL> set serveroutput on SQL> Declare 2 a int:=100; 3 b int:=200; 4 c number; 5 begin 6 c:=(a+b)/(a-b); 7 dbms_output.put_line(c); 8 exception 9 when zero_divide then 10 dbms_output.put_line('除数不能为零!'); 11 end; 12 / -3 PL/SQL 过程已成功完成。 --通过edit将b的值改为100,制造一个除数为0的情况 SQL> edit 已写入 file afiedt.buf 1 Declare 2 a int:=100; 3 b int:=100; 4 c number; 5 begin 6 c:=(a+b)/(a-b); 7 dbms_output.put_line(c); 8 exception 9 when zero_divide then 10 dbms_output.put_line('除数不能为零!'); 11* end; SQL> / 除数不能为零! PL/SQL 过程已成功完成。
在整个代码片段中,使用了set serveroutput on ,是因为在SQL*Plus中首先需要该命令来打开在服务器端显示执行结果这个功能。