PLSQL

PL / SQL包

PL / SQL包

這些是模式對象,組是邏輯上相關的PL/SQL類型、變量和子程序。他們有兩個強製性的部分:

  1. 包裝規範
  2. 包體或定義

包裝規範

這是包的接口。這隻聲明了要從包外部引用的類型、變量、常量、異常、遊標和子程序。我們也可以說,它包含了關於包內容的所有信息,但不包括子程序的代碼。所有放在規範中的對象都被稱為公共對象。任何不在包規範中但在包主體中編碼的子程序都稱為私有對象。

find (t_id teachers.id%type);teachers_sal結束;/

當我們執行時,上麵的代碼在SQL提示符下執行。

創建包。

包體

此代碼用於在包規範中聲明的各種方法,以及其他私有聲明,這些聲明對包外部的代碼隱藏。語句CREATE PACKAGE BODY用於創建包體。

示例:創建或替換包BODY teachers_sal AS PROCEDURE find_sal(t_id teachers.id%TYPE) IS t_sal teachers.salary%TYPE;SELECT salary INTO t_sal FROM teacher WHERE id = t_id;dbms_output。put_line('Salary: '|| c_sal);find_sal結束;teachers_sal結束;/ Output:創建包體。

使用包元素

包元素,如變量、過程或函數,可以通過下麵給出的語法訪問:

package_name.element_name;示例:DECLARE代碼教師。Id %type:= &tt_id;開始teachers_sal.find_sal(代碼);結束;/ Output: Enter value for tt_id: 2 Salary: 3000 PL/SQL procedure successfully completed。

Baidu
map