PL/SQL編碼規范
1. PL/SQL編碼規范
PL/SQL對大小寫不敏感,故切忌使用大小寫區分變量和其它用戶定義的元素。為使代碼具有可讀性,可遵循以下簡單的大小寫規則以便在源代碼中區分這些元素:
² 全部保留字、Oracle提供的程序包、內建函數、用戶定義的常數、Oracle和用戶定義的數據類型,以及模式名均采用大寫;
² 所有程序命名和過程名稱全部采用大寫。
² 修改前必須從CVS去取最新的版本去,同時如存在多個人同時修改的情況,請注意協調分工,注意事后合并版本。
² 所有的包和過程等PL/SQL腳本,請將最新的放在CVS上,
\JCN\20Engineering\20.40SourceCode\PLSQL\這個目錄下。
(FUNCTION和PACKAGE等要分開放)
文件的路徑如下圖片所示
如果是改修的,請到下圖的Baseline下去取文件,然后保存到上述路徑:
² PL/SQL的包和包體將采用一個文件,名稱為包的名字,保留到CVS將,請不要將包和包體分開為兩個文件update到CVS。
² 在提交到CVS上去以前,請清理掉臨時的變量,和編碼的時候采用的臨時表等,并請格式化你的代碼,不定期將會對代碼進行review。
1.1. PL/SQL程序命名規范
1. 無論是PL/SQL對象還是PL/SQL對象內部用的變量和游標等,都必須能從名稱上能讓人理解變量和游標的含義,而且一定要做好注釋。
2. 傳到CVS上的文本文件全部采用’.sql’作為文件名的后綴
1.1.1. 存儲過程
存儲過程的命名必須符合USP_DETAILNAME格式,其中 USP表示是存儲過程,DETAILNAME是與存儲過程意義相關的意義的名稱,如:USP_BUSINESS_RULE。
1.1.2. 軟件包
軟件包的命名必須符合PKG_ DETAILNAME格式,其中 PKG表示是軟件包, DETAILNAME是與軟件包意義相關的意義的名稱,例如:PKG_SORCE_ALL。
1.1.3. 觸發器
觸發器的的命名必須符合TRG_DETAILNAME格式,其中TRG表示是觸發器,DETAILNAME是與觸發器用途相關的意義的名稱,具體可以參考已有的TRIGGER對象。
1.1.4. 函數
函數的命名必須符合FNC_DETAILNAME格式,其中FNC表示是函數,,DETAILNAME是與函數意義相關的意義名稱,例如:FNC_SALARYCOUNT。
1.1.5. 變量&游標
1. 變量的命名必須符合規約,請采用”XXX_variablename” 開頭,其中XXX表示變量的類型。Variablename表示變量名,如為函數傳入參數請根據傳入類型加上IN,OUT,INOUT 等,如: IN_NUM_CUST_CODE.
2. 如果依據表的字段請采用%type或者%rowtype方式。請不要直接定義變量。
如:NUM_CUST_CODE TableName.CUST_CODE%type
3. 顯示游標請采用” CUR_”開頭,在代碼開頭請說明,同時說明游標的定義.
如:CUR_CUST_INFO
4. 所有的變量前必須帶上變量類型的標志,NUMBER型采用NUM,VARCAHR2 采用VAR,而在函數等入口的傳入方法 IN_VAR_CUST_NAME,OUT_NUM_CODE,INOUT_NUM_CODE的方式來區分變量的類型是否位IN,OUT,INOUT類型
5. 不能超過30個字符,不能采用關鍵字,要以字母開頭。
注tb: 以上命名規則將主要在于新建對象時使用,如果在原有的PL/SQL對象的基礎上修改,請按照原來代碼的命名規范,注意做好代碼的注釋。同時必須在PL/SQL代碼開頭,做好注釋說明。
posted on 2012-06-04 11:52 chen11-1 閱讀(895) 評論(0) 編輯 收藏 所屬分類: oracle