1.1約定
u 資料庫的schema,資料庫對象如表、字段、索引、序列、存儲過程等的命名約定;
u 命名使用富有意義的大寫英文詞彙,盡量避免使用縮寫,多個單詞組成的,中間以下劃線分割;
u 各表之間相關字段列名,字段類型盡量一緻;
u 數值類型不使用varchar2,日期類型隻用date,不允許使用varchar2;
u 除資料庫名稱長度為1-8個字元,其餘為1-30個字元,Databaselink名稱也不要超過30個字元;
u 命名隻能使用英文字母,數字和下劃線;
u 避免使用Oracle的保留字、關鍵字(見附錄);
1.2表名
u ORACLE大小寫不區分,但一定不能使用’引号’ 。建議大寫表名及列名。
u 表名使用英文單詞,要有意義,不能使用拼音及中文。
1.3主鍵
u 建議大寫。
u 已PK_ 開頭,後邊跟表名及字段名,根據長度可以适當縮寫。
u 主鍵不要放在表裡建,這樣檢視時都是SYS_開的,要放在表外單獨建立。
1.4外鍵
u 建議大寫,必須保證有索引。
u 以 FK_ 開頭,後邊跟參考表的表名及列名,根據長度可以适當縮寫。
u 最好不要建立外鍵,從程式上設計限制邏輯。如果非要建立一個表的外鍵不要超過3個。
1.5索引
u 建議大寫。
u 優先使用唯一索引,不能使用才考慮普通的tree索引。
u 單列索引:唯一索引,以UK_ 開頭,非唯一索引以 IDX_ 開頭,後邊跟表名及字段名,根據長度可以适當縮寫。
u 組合索引:已IDC_ 開頭,後邊跟表名及字段名,字段名的順序應該嚴格按照建索引時指定列的順序建立.字段數量不超過4個。
u 分區索引規則如上。
u 不允許使用其他類型索引,如函數索引,位圖索引等。
1.6序列
u 建議大寫。
u 已 S_ 開頭, 後邊跟表名,一個表隻使用一個序列。
u 避免NOCACHE+ORDER組合,是會導緻 隊列等待(enq: SQ- contention)。
u 根據業務需求指定CACHE大小, 但需要注意如果系統發生故障,所有緩存的沒有被DML語句使用并送出的序列值将丢失。潛在丢失值數量等于cache的數量。
1.7以下為不建議使用類型
u 視圖 V_ 開頭
u 函數 F_ 開頭
u 觸發器 T_ 開頭
u 存儲過程 P_ 開頭
u 物化視圖 MV_
u 包和包體 PKG_
u 類和類體 TYP_