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中首先需要該命令來打開在服務器端顯示執行結果這個功能。