




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)文件命名采用系統(tǒng)名+_+文件類型,比如系統(tǒng)名為kupage,則數(shù)據(jù)庫文件命名為kupage_database.mdf,有的數(shù)據(jù)庫文件有多個,比如SQL Server就有2個,一個是數(shù)據(jù)庫文件,另一個是日志文件,那么他們的文件命名分別為kupage_database.mdf,kupage_log.log。文件名全部采用小寫。1. 實體(表的命名1 表以名詞或名詞短語命名,確定表名是采用復(fù)數(shù)還是單數(shù)形式,此外給表的別名定義簡單規(guī)則(比方說,如果表名是一個單詞,別名就取單詞的前4 個字母;如果表名是兩個單詞,就各取兩個單詞的前兩個字母組成4 個字母長的別名;如果表的名字由3 個單詞組成,從頭兩個
2、單詞中各取一個然后從最后一個單詞中再取出兩個字母,結(jié)果還是組成4 字母長的別名,其余依次類推對工作用表來說,表名可以加上前綴WORK_ 后面附上采用該表的應(yīng)用程序的名字。在命名過程當(dāng)中,根據(jù)語義拼湊縮寫即可。注意,由于ORCLE會將字段名稱統(tǒng)一成大寫或者小寫中的一種,所以要求加上下劃線。舉例:定義的縮寫 Sales: Sal 銷售;Order: Ord 訂單;Detail: Dtl 明細(xì);則銷售訂單明細(xì)表命名為:Sal_Ord_Dtl;2 如果表或者是字段的名稱僅有一個單詞,那么建議不使用縮寫,而是用完整的單詞。舉例:定義的縮寫 Material Ma 物品;物品表名為:Material, 而
3、不是 Ma.但是字段物品編碼則是:Ma_ID;而不是Material_ID3 所有的存儲值列表的表前面加上前綴Z目的是將這些值列表類排序在數(shù)據(jù)庫最后。4 所有的冗余類的命名(主要是累計表前面加上前綴X冗余類是為了提高數(shù)據(jù)庫效率,非規(guī)范化數(shù)據(jù)庫的時候加入的字段或者表5 關(guān)聯(lián)類通過用下劃線連接兩個基本類之后,再加前綴R的方式命名,后面按照字母順序羅列兩個表名或者表名的縮寫。關(guān)聯(lián)表用于保存多對多關(guān)系。如果被關(guān)聯(lián)的表名大于10個字母,必須將原來的表名的進(jìn)行縮寫。如果沒有其他原因,建議都使用縮寫。舉例:表Object與自身存在多對多的關(guān)系,則保存多對多關(guān)系的表命名為:R_Object;表 Depart和
4、Employee;存在多對多的關(guān)系;則關(guān)聯(lián)表命名為R_Dept_Emp2. 屬性(列的命名1 采用有意義的列名,表內(nèi)的列要針對鍵采用一整套設(shè)計規(guī)則。每一個表都將有一個自動ID作為主健,邏輯上的主健作為第一組候選主健來定義,如果是數(shù)據(jù)庫自動生成的編碼,統(tǒng)一命名為:ID;如果是自定義的邏輯上的編碼則用縮寫加“ID”的方法命名。如果鍵是數(shù)字類型,你可以用_NO 作為后綴;如果是字符類型則可以采用_CODE 后綴。對列名應(yīng)該采用標(biāo)準(zhǔn)的前綴和后綴。舉例:銷售訂單的編號字段命名:Sal_Ord_ID;如果還存在一個數(shù)據(jù)庫生成的自動編號,則命名為:ID。2 所有的屬性加上有關(guān)類型的后綴,注意,如果還需要其它
5、的后綴,都放在類型后綴之前。注: 數(shù)據(jù)類型是文本的字段,類型后綴TX可以不寫。有些類型比較明顯的字段,可以不寫類型后綴。3 采用前綴命名給每個表的列名都采用統(tǒng)一的前綴,那么在編寫SQL表達(dá)式的時候會得到大大的簡化。這樣做也確實有缺點,比如破壞了自動表連接工具的作用,后者把公共列名同某些數(shù)據(jù)庫聯(lián)系起來。3. 視圖的命名1 視圖以V作為前綴,其他命名規(guī)則和表的命名類似;2 命名應(yīng)盡量體現(xiàn)各視圖的功能。4. 觸發(fā)器的命名觸發(fā)器以TR作為前綴,觸發(fā)器名為相應(yīng)的表名加上后綴,Insert觸發(fā)器加"_I",Delete 觸發(fā)器加"_D",Update觸發(fā)器加&quo
6、t;_U",如:TR_Customer_I,TR_Customer_D,TR_Customer_U。5. 存儲過程名存儲過程應(yīng)以"UP_"開頭,和系統(tǒng)的存儲過程區(qū)分,后續(xù)部分主要以動賓形式構(gòu)成,并用下劃線分割各個組成部分。如增加代理商的帳戶的存儲過程為"UP_Ins_Agent_Account"。6. 變量名變量名采用小寫,若屬于詞組形式,用下劃線分隔每個單詞,如my_err_no。7. 命名中其他注意事項1 以上命名都不得超過30個字符的系統(tǒng)限制。變量名的長度限制為29(不包括標(biāo)識字符。2 數(shù)據(jù)對象、變量的命名都采用英文字符,禁止使用中文命名
7、。絕對不要在對象名的字符之間留空格。3 小心保留詞,要保證你的字段名沒有和保留詞、數(shù)據(jù)庫系統(tǒng)或者常用訪問方法沖突5 保持字段名和類型的一致性,在命名字段并為其指定數(shù)據(jù)類型的時候一定要保證一致性。假如數(shù)據(jù)類型在一個表里是整數(shù),那在另一個表里可就別變成字符型了。8. SQL語句的編寫規(guī)范數(shù)據(jù)庫中存儲過程和觸發(fā)器中涉及大量的SQL語句,對SQL語句的編寫規(guī)范如下:關(guān)鍵字大寫:在SQL語句的編寫中,凡是SQL語句的關(guān)鍵字一律大寫,如:SELECT、ORDER BY、GROUP BY、FROM、WHERE、UPDATE、INSERT INTO、SET、BEGIN、END .8.1 Ruleru+Rule
8、標(biāo)識8.2 主鍵pk+表名+主鍵標(biāo)識8.3 外鍵fk+表名+主表名+外鍵標(biāo)識8.4 索引idx+字段標(biāo)識8.5 Defaultdf+Default標(biāo)識9 編程結(jié)構(gòu)和描述SQL SERVER系統(tǒng)中,一個批處理是從客戶傳給服務(wù)器的一個完整的包,可以包含若干條SQL語句。批處理中的語句是作為一組去進(jìn)行語法分析、編譯和執(zhí)行的。觸發(fā)器、存儲過程等數(shù)據(jù)對象則是將批處理永久化的方法。9.1注釋注釋可以包含在批處理中。在觸發(fā)器、存儲過程中包含描述性注釋將大大增加文本的可讀性和可維護(hù)性。本規(guī)范建議:1、注釋以英文為主。實際應(yīng)用中,發(fā)現(xiàn)以中文注釋的SQL語句版本在英文環(huán)境中不可用。為避免后續(xù)版本執(zhí)行過程中發(fā)生某些
9、異常錯誤,建議使用英文注釋。2、注釋盡可能詳細(xì)、全面。創(chuàng)建每一數(shù)據(jù)對象前,應(yīng)具體描述該對象的功能和用途。傳入?yún)?shù)的含義應(yīng)該有所說明。如果取值范圍確定,也應(yīng)該一并說明。取值有特定含義的變量(如boolean 類型變量,應(yīng)給出每個值的含義。3、注釋語法包含兩種情況:單行注釋、多行注釋單行注釋:注釋前有兩個連字符(-,最后以行尾序列(CR-LF結(jié)束。一般,對變量、條件子句可以采用該類注釋。多行注釋:符號/*和*/之間的內(nèi)容為注釋內(nèi)容。對某項完整的操作建議使用該類注釋。4、注釋簡潔,同時應(yīng)描述清晰。9.2函數(shù)注釋:編寫函數(shù)文本-如觸發(fā)器、存儲過程以及其他數(shù)據(jù)對象-時,必須為每個函數(shù)增加適當(dāng)注釋。該注釋
10、以多行注釋為主,主要結(jié)構(gòu)如下:/* 存儲過程:讀取用戶所分配的操作模塊及具體權(quán)限* 編制者:saiko* 修改人:* 輸入?yún)?shù):共有2個參數(shù)* cUserNo:用戶編號* cUserPassword:驗證密碼* 輸出參數(shù):eResult 1. 成功= 銷售0001 2. 失敗=Null 3.與eResult 無關(guān)輸出是記錄集* 調(diào)用例子:declare eResult varchar(50exec uChkUserPerm '0755' ,'123456', '銷售'* 說明:*/CREATE PROCEDURE spoxxx9.3條件執(zhí)行語句i
11、felse條件語句塊(statenemt block,以beginend為邊界僅在if子句的條件為真時才被執(zhí)行。為提高代碼的可讀性,建議嵌套不多于5層。還有,當(dāng)嵌套層次太多時,應(yīng)該考慮是否可以使用case語句。9.4重復(fù)執(zhí)行while和跳轉(zhuǎn)語句goto需要多次執(zhí)行的語句,可以使用while結(jié)構(gòu)。其中,控制while循環(huán)的條件在任何處理開始之前需要先執(zhí)行一次。循環(huán)體中的保留字break無條件的退出while循環(huán),然后繼續(xù)處理后續(xù)語句;保留字continue重新計算while條件,如果條件為真,則從循環(huán)開始處重新執(zhí)行各語句。使用跳轉(zhuǎn)語句goto和標(biāo)簽label也可以方便地實現(xiàn)循環(huán)和其他更靈活的操作
12、。SQL SERVER僅具有單通道語法分析器,因此不能解析對尚未創(chuàng)建的對象所做的前向參考。換言之,跳轉(zhuǎn)到某標(biāo)簽的后續(xù)語句應(yīng)該是可執(zhí)行的(如不存在可能尚未創(chuàng)建的數(shù)據(jù)對象。9.5書寫格式數(shù)據(jù)庫服務(wù)器端的觸發(fā)器和存儲過程是一類特殊的文本,為方便開發(fā)和維護(hù),提高代碼的易讀性和可維護(hù)性。規(guī)范建議按照分級縮進(jìn)格式編寫該文本。順序執(zhí)行的各命令位于同一級;條件語句塊(statenemt block,以beginend為邊界位于下一級,類推。SQL語句是該文本的主體。為適應(yīng)某些教復(fù)雜的用戶需求,SQL語句可能比較龐大。為方便閱讀和維護(hù),規(guī)范建議按照SQL語句中系統(tǒng)保留字的關(guān)鍵程度再劃分為三級。具體分級請參照下表
13、。其中,非系統(tǒng)保留字(如字段名、數(shù)據(jù)表名、標(biāo)點符號相對本級保留字再縮進(jìn)一級。多個連續(xù)的非保留字可以分行書寫,也可以寫在同一行。當(dāng)WHERE包含的條件子句教復(fù)雜時,應(yīng)該每行只寫一個條件分句,并為重要的條件字句填寫單行注釋。在保證基本縮進(jìn)格式的前提下,可以通過對齊某些重要關(guān)鍵字(如條件關(guān)鍵字AND、OR,符號= 、<> 等來進(jìn)一步提高文本的易讀性和可維護(hù)性。相鄰兩級的縮進(jìn)量為10個空格。這也是ISQL編輯器默認(rèn)的文本縮進(jìn)量。另外,在ISQL編輯器中,一個TAB鍵也相當(dāng)于10個空格。注:按照功能,四類SQL語句(SELECT、INSERT、UPDATE、DELETE的關(guān)鍵字可以劃分為三類:主關(guān)鍵字、次關(guān)鍵字、一般關(guān)鍵字。如下表所示:主關(guān)鍵字次關(guān)鍵字一般關(guān)鍵字SELECTINSERT (INTOUPDATEDELETE FROMWHEREVALUES
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能化物流倉儲項目可行性研究報告
- 動態(tài)心電圖監(jiān)測系統(tǒng)設(shè)備項目投資風(fēng)險評估報告
- 量子加密在數(shù)據(jù)隱私中的應(yīng)用研究-洞察闡釋
- 鋰電池環(huán)境影響評估-洞察闡釋
- 證明樹理論創(chuàng)新-洞察闡釋
- 青年集體記憶-新世代的歷史認(rèn)知與身份構(gòu)建-洞察闡釋
- 防盜設(shè)備產(chǎn)業(yè)生態(tài)構(gòu)建-洞察闡釋
- 復(fù)雜系統(tǒng)穩(wěn)定性分析-第1篇-洞察及研究
- 基于場景的人機(jī)交互設(shè)計-洞察闡釋
- 群論在信號處理中的表示與對稱性分析-洞察闡釋
- 中醫(yī)診所信息安全管理制度
- 公共危機(jī)管理(本)-第五次形成性考核-國開(BJ)-參考資料
- 基于SLM工藝的點陣結(jié)構(gòu)優(yōu)化設(shè)計的工藝要素研究
- 太陽能路燈施工方案
- 《商務(wù)數(shù)據(jù)分析》課件-缺失數(shù)據(jù)處理
- 《思想政治教育方法論》考研(第3版)鄭永廷配套考試題庫及答案【含名校真題、典型題】
- 【MOOC】機(jī)械原理-西北工業(yè)大學(xué) 中國大學(xué)慕課MOOC答案
- 彩票參數(shù)及公式
- 中華傳統(tǒng)文化進(jìn)中小學(xué)課程教材指南
- 消防工程常用設(shè)施三維圖解
- 2020年《知識產(chǎn)權(quán)法》模擬考試1000題(含標(biāo)準(zhǔn)答案)
評論
0/150
提交評論