版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1命名原則約定u是指對數(shù)據(jù)庫、數(shù)據(jù)庫對象如表、字段、索引、序列、存儲過程等的命名約定;U命名使用富有意義的英文詞匯,盡量避免使用縮寫,多個單詞組成的,中間以下劃線分割u避免使用Oracle的保留字如LEVEL關(guān)鍵字如TYPE(見Oracle保留字和關(guān)鍵字);u各表之間相關(guān)列名盡量同名;u除數(shù)據(jù)庫名稱長度為18個字符,其余為130個字符,Database link名稱也不要超過30個字符;u命名只能使用英文字母,數(shù)字和下劃線;表名規(guī)則如下:命名規(guī)則為xxx_yyy_TableName。xxx表示開發(fā)公司的名稱,最多五個字母構(gòu)成,盡量用簡稱;yyy表示子系統(tǒng)中的子模塊的名稱(可以沒有) ,最多五個
2、字母構(gòu)成,盡量用簡稱; TableName為表含義,最多十個字 母構(gòu)成,盡量用簡稱TableName規(guī)則如下:u使用英文單詞或詞組作為表名,不得使用漢語拼音u用名詞和名詞短語作表名U不使用復數(shù)正確的命名,例如:fiber_sys_userfiber_biz_order存儲過程規(guī)則如下:命名規(guī)則為xxx_yyy_StoredProcedureName。xxx表示開發(fā)公司的名稱,最多五個字母構(gòu)成,盡量用簡稱;yyy表示子系統(tǒng)中的子模塊的名稱(可以沒有),最多五個字母構(gòu)成,盡量用簡稱;StoredProcedureName為存儲過程含義,最多十個字母構(gòu)成,盡量用簡稱StoredProcedureNa
3、me 規(guī)則如下:u用動詞或動詞短語來命名,并帶有賓語u需要符合用Pascal命名規(guī)則。u盡量謹慎地使用縮寫u盡量不要和關(guān)鍵字重合u不要用任何名前綴(例如U, B)u StoredProcedureName內(nèi)不使用下劃線u當操作依賴條件時,一般結(jié)尾使用By+件存儲過程正確的命名,例如:sys_InsertUsersys_SearchUserByUserIDsys_DeleteUserByUserID視圖規(guī)則如下:u視圖的命名采用xxx_yyy_ViewName_v。xxx表示開發(fā)公司的名稱,最多五個字母構(gòu)成,盡量用簡稱; yyy 表示子系統(tǒng)中的子模塊的名稱(可以沒有),最多五個字母構(gòu)成,盡量用簡
4、稱;_v后綴表示視圖,ViewName 部分表示視圖的含義,最多十個字母構(gòu)成,盡量用簡稱。ViewName規(guī)則如下:u用名詞和名詞短語,u不使用復數(shù)u用Pascal命名規(guī)則u盡量謹慎地使用縮寫u盡量不要和關(guān)鍵字重合u不要用任何名前綴(例如U, B)u ViewName中使用下劃線視圖正確的命名,例如:sys_UserView_vbiz_UserOrderView_v索引規(guī)則如下:table_name_column_name_idx 。多單詞組成的 column name ,取前幾個單詞首字母,加末單詞組成column_name如:tst_sample 表 member_id 上的索引:tst_
5、sample_mid_idxsys_news 表 title 上的索弓 I : sys_news_titile_idx ;序列規(guī)則如下:table_name_seq ;如:tst_sample 表的序歹U : tst_sample_seq主鍵主鍵命名:table_name_pk ;如:tst_sample 表的主鍵:tst_sample_pk外鍵外鍵命名:table_name_column_name_fk ;多單詞組成的 column name ,取前幾個單詞首字母,加末單詞組成column_name如:tst_sample 表 user_id 字段的外鍵 :tst_sample_uid_fk
6、tst_sample 表 type_id 字段的外鍵:tst_sample_tid_fk2設(shè)計規(guī)范規(guī)范約定1.遵守數(shù)據(jù)的設(shè)計規(guī)范 3NF規(guī)定 表內(nèi)的每一個值都只能被表達一次。 表內(nèi)的每一行都應該被唯一的標識(有唯一鍵)。 表內(nèi)不應該存儲依賴于其他鍵的非鍵信息。2.實體表都必須包含四個字段:編號(ID)、代碼(Code)、創(chuàng)建人(Created By)、創(chuàng)建時間(Creation Time)、修改人(Modified By)、修改時間(Modification Time )、刪除標志(Delete Status)。其含義如 下:u編號是系統(tǒng)內(nèi)的唯一標識u代碼是客戶為這個實體的編碼,這個字段看需要
7、確定是否保留U創(chuàng)建人是是指數(shù)據(jù)庫記錄創(chuàng)建人u創(chuàng)建時間是指數(shù)據(jù)庫記錄創(chuàng)建時間,默認為SYSDATEU修改人是是指數(shù)據(jù)庫記錄修改人U修改時間是指數(shù)據(jù)庫記錄修改時間,默認為SYSDATEU刪除標志是本條記錄是否已刪除的標志(0:沒有刪除;1:已經(jīng)刪除),數(shù)據(jù)中的數(shù)據(jù)不做真正刪除,只設(shè)置這個標志這五個字段的命名規(guī)則如下u 實體名十字段名稱, 如 user_id、user_code、created_by、creation_time、modified_by 、modification_time 、 delete_status。u這五個字段的類型和長度規(guī)則如下n 編號 INTEGERn 代碼 VARCHAR
8、2(30)n 創(chuàng)建人INTEGERn創(chuàng)建時間DATEn 修改人INTEGERn修改時間DATEn刪除標志CHAR(1)字段規(guī)范1. 一行記錄必須表內(nèi)唯一,表必須有主鍵。2. 枚舉類型使用 NUMBER且需要說明枚舉類型的各個不同取值的含義3. ID結(jié)尾的字段為僅由數(shù)字組成,Code結(jié)尾的字段為僅由字母或數(shù)字組成4. 用CHAR (1)表示布爾值的取大寫:“Y”5. 應盡量使用VARCHAR2代替CHAR類型;6. VARCHAR(承多 4000 字符;7. DATE精確到秒,而非天;8. 使用 CLOB代替 LONG, BLOB代替 LONG RAW9. 使用NUMBER數(shù)據(jù)類型時請給定長度,
9、例如:NUMBER(5,2)表示整數(shù)部分最大3位,小數(shù)部分為2位;3使用規(guī)范綜合1. 如果開發(fā)過程中需要建立索引,需要提交書面的更改請求, 說明所需索引的定義(名稱、字段列表、弓屢型二)以及覆立函理由。數(shù)據(jù)庫管理員統(tǒng)一商It弓iW提交白鎘求羨。2. 數(shù)據(jù)庫各表的初始數(shù)據(jù)(包含各代碼表、配置表)需要提交給數(shù)據(jù)庫管理員。3. 不得使用觸發(fā)器。4. 涉及到數(shù)據(jù)庫多表數(shù)據(jù)的更改 (Insert/Delete/Update)必須使用數(shù)據(jù)庫事務進行控制,并且必須有完整事務開始和提交/回滾機制。不能使用范圍事務5. 盡量避免Union操作的使用,需要使用時,請向數(shù)據(jù)庫管理員咨詢使用Union操作的影響。6.
10、 SQL語句和存儲過程,盡量使用PL/SQLDevelper的代碼美化器美化。7. 屬于ORACLE關(guān)關(guān)鍵字大小,表名、列名等小寫。查詢1. 在表查詢中,一律不要使用 *作為查詢的字段列表,需要哪些字段必須顯式寫明2. 在表查詢中,必須有 Where條件,除非此表為非增長表3. 在表查詢中,一次最多返回的記錄條數(shù)不要超過1000條或記錄內(nèi)容不要大于 1MB的數(shù)據(jù)。4.在表查詢中,作 Order By排序時,優(yōu)先使用主鍵列,索引列5. 多表關(guān)聯(lián)查詢時,優(yōu)先使用Where條件,再作表關(guān)聯(lián),并且需要保證被關(guān)聯(lián)的字段需要有索引6. 避免在WHERE字句中對列施以函數(shù):錯誤:SELECT service
11、_id,service_nameFROM service_promotionWHERE TO_CHAR(gmt_modified,' yyyym-dd' )='200009-01';正確:SELECT service_id,service_nameFROM service_promotionWHERE gmt_modified>=TO_DATE( '200-01' ,' -myy- dd ' )AND gmt_modified < TO_DATE( ' 200-02' ,' yyyy-dd
12、9;);1. 避免使用數(shù)據(jù)庫的類型自動轉(zhuǎn)換功能:錯誤:SELECT category_id, category_name FROM categoryWHERE category_id =' -2td'' ; s type is number正確:SELECT category_id, category_name FROM category WHERE category_id = 123; -id ' s type is number刪除2. 刪除記錄時,必須有 Where唯一條件3. 當有主從表時,要先刪除從表記錄,在刪除主表記錄修改1.修改記錄時,必須有 Wh
13、ere唯一條件4 Oracle保留字和關(guān)鍵字ACCESS DECIMAL INITIAL ON STARTADD NOT INSERT ONLINE SUCCESSFULALL DEFAULT INTEGER OPTION SYNONYMALTER DELETE INTERSECT OR SYSDATEAND DESC INTO ORDER TABLEANY DISTINCT IS PCTFREE THENAS DROP LEVEL PRIOR TOASC ELSE LIKE PRIVILEGES TRIGGERAUDIT EXCLUSIVE LOCK PUBLIC UIDBETWEEN EXISTS LONG RAW UNIONBY FILE MAXEXTENTS RENAME UNIQUEFROM FLOAT MINUS RESOURCE UPDATECHAR FOR MLSLABEL REVOKE USERCHECK SHARE MODE ROW VALIDATECLUSTER GRANT MODIFY ROWID VALUESCOLUMN GROUP NOAUDIT ROWNUM VARCHARCOMMENT HAVING NOCOMPRESS ROWS VARCHAR2COMPRESS IDENTIFIED NOWAIT SELECT VIEW
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《深圳大學圖書館》課件
- 《電子服務概論》課件
- 2024屆安徽省部分學校高三上學期期末考試歷史試題(解析版)
- 2024年遼寧輕工職業(yè)學院單招職業(yè)技能測試題庫完整答案
- 單位管理制度集粹選集【人事管理篇】十篇
- 單位管理制度匯編大全【員工管理篇】
- 單位管理制度合并選集職工管理篇
- 《法國雪鐵龍公園》課件
- 單位管理制度分享合集【職工管理篇】
- 單位管理制度呈現(xiàn)大全【職工管理】十篇
- 預約診療工作自查自糾報告
- 行業(yè)會計比較ppt課件(完整版)
- 新修訂《數(shù)據(jù)安全法》全文ppt
- 各項常規(guī)檢查前后的注意事項課件
- 2021年推進婦幼健康領(lǐng)域中醫(yī)藥工作總結(jié)
- 綠化苗木組織供應及售后服務方案
- YY∕T 0314-2021 一次性使用人體靜脈血樣采集容器
- 第五章_油樣分析
- 儲罐受限空間作業(yè)方案DOC
- 壓力容器耐壓試驗
- 課程設(shè)計---年產(chǎn)5.6萬噸乙醇精餾塔的設(shè)計
評論
0/150
提交評論