oracle編程、操做不良習慣總結

   接觸oracle多年了,發現本身和身邊的一些人在oracle的使用中存在一些很差的開發操做方式,特寫出以便借鑑。
一.oracle編程方面:
1. oracle的代碼書寫格式不規範,能夠參照oracle自帶的代碼格式進行編寫。
2. oracle對象的命名規則要統一,不要使用數字、中文、拼音,要作到知名見義。
3. 表名、字段名必需要加註釋。
    例:comment on table 表名 is '對錶註釋的內容'; --給表添加註釋
        comment on column 表名.列名 is '對列註釋的內容'; --給列添加註釋
4. 表的約束必須單獨創建,不要在列名後直接加primary, unique and foreign key  constraints 等。
5. 存儲過程當中的輸入輸出參數必須命名規範,不要交叉書寫。
6. 各參數及中間變量的定義,儘可能使用 %type來定義,全部變量都要加註釋。
7. 存儲過程必需要有異常處理部分(中間過程除外,由調用它的過程來處理異常)。
8. 用遊標返回結果時,異常處理部分也必需要有遊標返回。
9. select語句要列出具體字段名,嚴禁使用select * 方式。
10. insert語句要列出具體字段名,嚴禁使用insert into tablename values ( … )方式,
    或insert into tablename ( … ) values ( … )方式,或insert into tablename select * 方式。
11. 能用靜態SQL實現的邏輯,儘可能不使用動態SQL,若是使用動態SQL儘量的綁定變量。
12. 若是存儲過程或函數返回遊標類型參數,必須在任何出口前打開遊標,用完後必須關閉。
13. insert into語句不要隨意回車換行,否則加載時會報錯的。
14. 存儲過程、函數的結尾用 ‘ END 對象名;’ 有時會報錯的,直接寫 END; 結束。
15. 不一樣類型的對象腳本應該寫在不一樣的文件中,嚴禁混寫。
16. 有多個域的數據庫,數據腳本中必須使用 ‘域名.對象名’,防止混淆。
17. 存儲過程、函數必需要有相應的註釋說明。數據庫

二.oracle操做方面:
1. 各人使用各自帳戶登陸,禁止隨意使用系統賬號登陸,嚴格控制dba帳戶。
2. 嚴禁在 PL/SQL 中用 select * from t_tablename for update 或select t.*,t.rowid from t_tablename t 點擊鎖圖標方式編輯數據。
3. 嚴禁在業務高峯期使用頁面工具導入大量數據,大數據量的導入導出必須使用專門的工具處理。
4. 嚴禁在業務高峯期在 PL/SQL 中直接test存儲過程、函數,容易鎖表。
5. 嚴禁在業務高峯期對大表加索引,建索引前最好看下索引表空間是否夠用。
6. 嚴禁隨意修改、編譯數據庫對象,修改、編譯後要立刻檢查是否有失效的對象。
7. 建表空間前,先登陸小型機查看/dev/目錄下面的空間是否夠用,而後再根據命名規則建立。
8. 平常創建的臨時表、中間表用完後要及時清理,先truncate table,而後drop table。
9. 嚴禁在不操做的狀況下長時間登陸服務器,用完後必須及時退出。
10. 嚴禁在線網數據庫進行無關的操做。
11. 嚴禁隨意刪除系統日誌、告警日誌、windows事件查看器中的日誌、各服務器日誌等。
12. 確實須要重啓服務時,必須先徵得相關部門和人員的贊成,嚴禁私自重啓服務。
13. 嚴禁在業務高峯期進行任何升級操做,特殊狀況除外,必須通知到全部相關人員,作完後要及時測試。
14. 全部刪除、更新操做前必須先進行備份,嚴禁不備份直接操做。
15. 使用truncate命令前必定要謹慎,確認無誤後再操做。
16. 嚴禁使用‘kill -9 進程號’ 來結束小型機進程,搞很差會宕機的。編程

   以上就是一些常見的不良使用習慣,但願能加以借籤改正,養成良好的使用習慣。
 windows

相關文章
相關標籤/搜索