PL/SQL 01 程式碼編寫規則

j04212發表於2014-02-12

1、識別符號命名規則
當在 PL/SQL 中使用識別符號定義變數、常量時,識別符號名稱必須以字元開始,並且長度不能超過 30 個字元。另外,為了提高程式的可讀性,Oracle 建議使用者按照以下規則定義各種識別符號:
--當定義變數時,建議使用 v_ 作為字首,例如 v_sal, v_job等。
--當定義常量時,建議使用 c_ 作為字首,例如 c_rate 。
--當定義遊標時,建議使用 _cursor 作為字尾,例如 emp_cursor 。
--當定義例外時,建議使用 e_ 作為字首,例如 e_integrity_error。
--當定義 PL/SQL 表型別時,建議使用 _table_type 作為字尾,例如 sal_table_type。
--當定義 PL/SQL 表變數時,建議使用 _table 作為字尾,例如 sal_table。
--當定義 PL/SQL 記錄型別時,建議使用 _record_type 作為字尾,例如 emp_record_type。
--當定義 PL/SQL 記錄變數時,建議使用 _record 作為字尾,例如 emp_record。


2、大小寫規則

當在 PL/SQL 塊中編寫 SQL 語句和 PL/SQL 語句時,語句既可以使用大寫格式,也可以使用小寫格式。但是,為了提高程式的可讀性和效能,Oracle 建議使用者按照以下大小寫規則編碼:
--SQL 關鍵字採用大寫格式,例如 SELECT, UPDATE, SET, WHERE等。
--PL/SQL 關鍵字採用大寫格式,例如 DECLARE, BEGIN, END等。
--資料型別採用大寫格式,例如 INT, VARCHAR2,DATE等。
--識別符號和引數採用小寫格式,例如 v_sal, c_rate等。
--資料庫物件和列採用小寫格式,例如 emp, sal, ename等。


3、程式碼縮排

類似於其他程式語言,當編寫 PL/SQL 塊時,為了提高程式可讀性,同級程式碼應該對其,而下一級程式碼則應該縮排。


4、巢狀塊和變數範圍

巢狀塊是指嵌入在一個 PL/SQL 塊中的另一個 PL/SQL 塊。其中被嵌入的塊稱為字塊,而包含子塊的 PL/SQL 塊則被稱為主塊。當使用巢狀塊時,注意,子塊可以引用主塊所定義的任何識別符號,但主塊卻不能引用子塊的任何識別符號。也就是說,子塊定義的識別符號是區域性識別符號(區域性變數),而主塊定義的識別符號是全域性識別符號(全域性變數)。

...
  x BINARY_INTEGER;
BEGIN
  ...
  DECLARE
    y NUMBER;
  BEGIN
    ...
  END;
  ...
END;

x 為全域性變數,y 為區域性變數。


5、在 PL/SQL 塊中可以使用的 SQL 函式

當編寫 PL/SQL 程式碼時,可以直接應用大多數的單行 SQL 函式。這些 SQL 函式 包括單行數字函式(例如 ROUND)、單行字元函式(例如 UPPER)、轉換函式(例如 TO_CHAR)以及各種日期函式(例如 MONTH_BETWEEN)。但是,使用者需注意,某些 SQL 函式只能在 SQL 語句中引用,而不能直接在 PL/SQL 語句中引用,這些 SQL 函式包括 GREATEST, LEAST, DECODE以及所有分組函式(例如 SUM)。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27633655/viewspace-1080375/,如需轉載,請註明出處,否則將追究法律責任。

相關文章