首頁(yè) 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級(jí) | 職稱英語(yǔ) | 商務(wù)英語(yǔ) | 公共英語(yǔ) | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語(yǔ) | 成人英語(yǔ)三級(jí) | 申碩英語(yǔ) | 攻碩英語(yǔ) | 職稱日語(yǔ) | 日語(yǔ)學(xué)習(xí) | 法語(yǔ) | 德語(yǔ) | 韓語(yǔ)
計(jì)算機(jī)等級(jí)考試 | 軟件水平考試 | 職稱計(jì)算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報(bào)關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
報(bào)檢員 | 教師資格 | 社會(huì)工作者 | 外銷員 | 國(guó)際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價(jià)格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)證) | 經(jīng)濟(jì)師 | 會(huì)計(jì)職稱 | 注冊(cè)會(huì)計(jì)師 | 審計(jì)師 | 注冊(cè)稅務(wù)師
注冊(cè)資產(chǎn)評(píng)估師 | 高級(jí)會(huì)計(jì)師 | ACCA | 統(tǒng)計(jì)師 | 精算師 | 理財(cái)規(guī)劃師 | 國(guó)際內(nèi)審師
一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)工程師 | 造價(jià)員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評(píng)價(jià)師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價(jià)師 | 安全評(píng)價(jià)師 | 電氣工程師 | 注冊(cè)測(cè)繪師 | 注冊(cè)計(jì)量師
繽紛校園 | 實(shí)用文檔 | 英語(yǔ)學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

2010計(jì)算機(jī)三級(jí)數(shù)據(jù)庫(kù)經(jīng)驗(yàn)談4:保證數(shù)據(jù)完整性

2010計(jì)算機(jī)三級(jí)數(shù)據(jù)庫(kù)經(jīng)驗(yàn)談4:保證數(shù)據(jù)完整性。

  精選了其中的 60 個(gè)最佳技巧,并把這些技巧編寫成了本文,為了方便索引其內(nèi)容劃分為 5 個(gè)部分:

  第一部分介紹了設(shè)計(jì)數(shù)據(jù)庫(kù)之前12個(gè)基本技巧,包括命名規(guī)范和明確業(yè)務(wù)需求等(數(shù)據(jù)庫(kù)設(shè)計(jì)經(jīng)驗(yàn)談(1) );第二部分介紹設(shè)計(jì)數(shù)據(jù)庫(kù)表24個(gè)指南性技巧,涵蓋表內(nèi)字段設(shè)計(jì)以及應(yīng)該避免的常見問題等(數(shù)據(jù)庫(kù)設(shè)計(jì)經(jīng)驗(yàn)談 (2) );第三部分主要介紹選擇鍵和索引,包含10個(gè)技巧專門涉及系統(tǒng)生成的主鍵的正確用法,還有何時(shí)以及如何索引字段以獲得最佳性能等(數(shù)據(jù)庫(kù)設(shè)計(jì)經(jīng)驗(yàn)談 (3) )。本次第四部分主要討論保證數(shù)據(jù)完整性,如何保持?jǐn)?shù)據(jù)庫(kù)的清晰和健壯,如何把有害數(shù)據(jù)降低到最小程度。

  第 4 部分 - 保證數(shù)據(jù)的完整性

  用約束而非商務(wù)規(guī)則強(qiáng)制數(shù)據(jù)完整性

  如果你按照商務(wù)規(guī)則來(lái)處理需求,那么你應(yīng)當(dāng)檢查商務(wù)層次/用戶界面:如果商務(wù)規(guī)則以后發(fā)生變化,那么只需要進(jìn)行更新即可。假如需求源于維護(hù)數(shù)據(jù)完整性的需要,那么在數(shù)據(jù)庫(kù)層面上需要施加限制條件。如果你在數(shù)據(jù)層確實(shí)采用了約束,你要保證有辦法把更新不能通過約束檢查的原因采用用戶理解的語(yǔ)言通知用戶界面。除非你的字段命名很冗長(zhǎng),否則字段名本身還不夠。

  只要有可能,請(qǐng)采用數(shù)據(jù)庫(kù)系統(tǒng)實(shí)現(xiàn)數(shù)據(jù)的完整性。這不但包括通過標(biāo)準(zhǔn)化實(shí)現(xiàn)的完整性而且還包括數(shù)據(jù)的功能性。在寫數(shù)據(jù)的時(shí)候還可以增加觸發(fā)器來(lái)保證數(shù)據(jù)的正確性。不要依賴于商務(wù)層保證數(shù)據(jù)完整性;它不能保證表之間(外鍵)的完整性所以不能強(qiáng)加于其他完整性規(guī)則之上。

  分布式數(shù)據(jù)系統(tǒng)

  對(duì)分布式系統(tǒng)而言,在你決定是否在各個(gè)站點(diǎn)復(fù)制所有數(shù)據(jù)還是把數(shù)據(jù)保存在一個(gè)地方之前應(yīng)該估計(jì)一下未來(lái) 5 年或者 10 年的數(shù)據(jù)量。當(dāng)你把數(shù)據(jù)傳送到其他站點(diǎn)的時(shí)候,最好在數(shù)據(jù)庫(kù)字段中設(shè)置一些標(biāo)記。在目的站點(diǎn)收到你的數(shù)據(jù)之后更新你的標(biāo)記。為了進(jìn)行這種數(shù)據(jù)傳輸,請(qǐng)寫下你自己的批處理或者調(diào)度程序以特定時(shí)間間隔運(yùn)行而不要讓用戶在每天的工作后傳輸數(shù)據(jù)。本地拷貝你的維護(hù)數(shù)據(jù),比如計(jì)算常數(shù)和利息率等,設(shè)置版本號(hào)保證數(shù)據(jù)在每個(gè)站點(diǎn)都完全一致。

  強(qiáng)制指示完整性(參照完整性)

  沒有好辦法能在有害數(shù)據(jù)進(jìn)入數(shù)據(jù)庫(kù)之后消除它,所以你應(yīng)該在它進(jìn)入數(shù)據(jù)庫(kù)之前將其剔除。激活數(shù)據(jù)庫(kù)系統(tǒng)的指示完整性特性。這樣可以保持?jǐn)?shù)據(jù)的清潔而能迫使開發(fā)人員投入更多的時(shí)間處理錯(cuò)誤條件。

  關(guān)系

  如果兩個(gè)實(shí)體之間存在多對(duì)一關(guān)系,而且還有可能轉(zhuǎn)化為多對(duì)多關(guān)系,那么你最好一開始就設(shè)置成多對(duì)多關(guān)系。從現(xiàn)有的多對(duì)一關(guān)系轉(zhuǎn)變?yōu)槎鄬?duì)多關(guān)系比一開始就是多對(duì)多關(guān)系要難得多。

  采用視圖

  為了在你的數(shù)據(jù)庫(kù)和你的應(yīng)用程序代碼之間提供另一層抽象,你可以為你的應(yīng)用程序建立專門的視圖而不必非要應(yīng)用程序直接訪問數(shù)據(jù)表。這樣做還等于在處理數(shù)據(jù)庫(kù)變更時(shí)給你提供了更多的自由。

  給數(shù)據(jù)保有和恢復(fù)制定計(jì)劃

  考慮數(shù)據(jù)保有策略并包含在設(shè)計(jì)過程中,預(yù)先設(shè)計(jì)你的數(shù)據(jù)恢復(fù)過程。采用可以發(fā)布給用戶/開發(fā)人員的數(shù)據(jù)字典實(shí)現(xiàn)方便的數(shù)據(jù)識(shí)別同時(shí)保證對(duì)數(shù)據(jù)源文檔化。編寫在線更新來(lái)“更新查詢”供以后萬(wàn)一數(shù)據(jù)丟失可以重新處理更新。

  用存儲(chǔ)過程讓系統(tǒng)做重活

  解決了許多麻煩來(lái)產(chǎn)生一個(gè)具有高度完整性的數(shù)據(jù)庫(kù)解決方案之后,我決定封裝一些關(guān)聯(lián)表的功能組,提供一整套常規(guī)的存儲(chǔ)過程來(lái)訪問各組以便加快速度和簡(jiǎn)化客戶程序代碼的開發(fā)。數(shù)據(jù)庫(kù)不只是一個(gè)存放數(shù)據(jù)的地方,它也是簡(jiǎn)化編碼之地。

  使用查找

  控制數(shù)據(jù)完整性的最佳方式就是限制用戶的選擇。只要有可能都應(yīng)該提供給用戶一個(gè)清晰的價(jià)值列表供其選擇。這樣將減少鍵入代碼的錯(cuò)誤和誤解同時(shí)提供數(shù)據(jù)的一致性。某些公共數(shù)據(jù)特別適合查找:國(guó)家代碼、狀態(tài)代碼等。

  預(yù)告:在第五部分將介紹各種小技巧,不包括在以上 4 個(gè)部分中的其他技巧,五花八門,有了它們希望你的數(shù)據(jù)庫(kù)開發(fā)工作會(huì)更輕松一些。

  相關(guān)推薦:2010年全國(guó)計(jì)算機(jī)等考二級(jí)C:程序設(shè)計(jì)實(shí)戰(zhàn)匯總
       2010年9月計(jì)算機(jī)等級(jí)考試精華備考資料匯總
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。