小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

數(shù)據(jù)庫(kù)設(shè)計(jì)指南(四)

 Ralf_Jones 2006-02-24
  5. 采用視圖
  為了在你的數(shù)據(jù)庫(kù)和你的應(yīng)用程序代碼之間提供另一層抽象,你可以為你的應(yīng)用程序建立專門的視圖而不必非要應(yīng)用程序直接訪問數(shù)據(jù)表。這樣做還等于在處理數(shù)據(jù)庫(kù)變更時(shí)給你提供了更多的自由。
  6. 給數(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ù)丟失可以重新處理更新。
  7. 用存儲(chǔ)過程讓系統(tǒng)做重活
  解決了許多麻煩來(lái)產(chǎn)生一個(gè)具有高度完整性的數(shù)據(jù)庫(kù)解決方案之后,我所在的團(tuán)隊(duì)決定封裝一些關(guān)聯(lián)表的功能組,提供一整套常規(guī)的存儲(chǔ)過程來(lái)訪問各組以便加快速度和簡(jiǎn)化客戶程序代碼的開發(fā)。在此期間,我們發(fā)現(xiàn)3GL 編碼器設(shè)置了所有可能的錯(cuò)誤條件,比如以下所示:
  SELECT Cnt = COUNT (*)
  FROM [<Table>]
  WHERE [<primary key column>] = <new value>
  IF Cnt = 0
  BEGIN
  INSERT INTO [<Table>]
  ( [< primary key column>] )
  VALUES ( <New value> )
  END
  ELSE
  BEGIN
  <indicate duplication error>
  END
  而一個(gè)非3GL 編碼器是這樣做的:
  INSERT INTO [<Table>]
  ( [< primary key column>] )
  VALUES
  ( <New value> )
  IF @@ERROR = 2627 -- Literal error code for Primary Key Constraint
  BEGIN
  <indicate duplication error>
  END
  第2 個(gè)程序簡(jiǎn)單多了,而且事實(shí)上,利用了我們給數(shù)據(jù)庫(kù)的功能。雖然我個(gè)人不喜歡使用嵌入文字(2627)。但是那樣可以很方便地用一點(diǎn)預(yù)先處理來(lái)代替。數(shù)據(jù)庫(kù)不只是一個(gè)存放數(shù)據(jù)的地方,它也是簡(jiǎn)化編碼之地。
  8. 使用查找
  控制數(shù)據(jù)完整性的最佳方式就是限制用戶的選擇。只要有可能都應(yīng)該提供給用戶一個(gè)清晰的價(jià)值列表供其選擇。這樣將減少鍵入代碼的錯(cuò)誤和誤解同時(shí)提供數(shù)據(jù)的一致性。某些公共數(shù)據(jù)特別適合查找:國(guó)家代碼、狀態(tài)代碼等。
  
  第5 部分— 各種小技巧
  1. 文檔、文檔、文檔
  對(duì)所有的快捷方式、命名規(guī)范、限制和函數(shù)都要編制文檔。
  采用給表、列、觸發(fā)器等加注釋的數(shù)據(jù)庫(kù)工具。是的,這有點(diǎn)費(fèi)事,但從長(zhǎng)遠(yuǎn)來(lái)看,這樣做對(duì)開發(fā)、支持和跟蹤修改非常有用。
  取決于你使用的數(shù)據(jù)庫(kù)系統(tǒng),可能有一些軟件會(huì)給你一些供你很快上手的文檔。你可能希望先開始在說(shuō),然后獲得越來(lái)越多的細(xì)節(jié)?;蛘吣憧赡芟M芷谛缘念A(yù)排,在輸入新數(shù)據(jù)同時(shí)隨著你的進(jìn)展對(duì)每一部分細(xì)節(jié)化。不管你選擇哪種方式,總要對(duì)你的數(shù)據(jù)庫(kù)文檔化,或者在數(shù)據(jù)庫(kù)自身的內(nèi)部或者單獨(dú)建立文檔。這樣,當(dāng)你過了一年多時(shí)間后再回過頭來(lái)做第2 個(gè)版本,你犯錯(cuò)的機(jī)會(huì)將大大減少。
  2. 使用常用英語(yǔ)(或者其他任何語(yǔ)言)而不要使用編碼
  為什么我們經(jīng)常采用編碼(比如9935A 可能是墨水筆的供應(yīng)代碼,4XF788-Q 可能是帳目編碼)?理由很多。但是用戶通常都用英語(yǔ)進(jìn)行思考而不是編碼。工作5 年的會(huì)計(jì)或許知道4XF788-Q 是什么東西,但新來(lái)的可就不一定了。在創(chuàng)建下拉菜單、列表、報(bào)表時(shí)最好按照英語(yǔ)名排序。假如你需要編碼,那你可以在編碼旁附上用戶知道的英語(yǔ)。
  3. 保存常用信息
  讓一個(gè)表專門存放一般數(shù)據(jù)庫(kù)信息非常有用。我常在這個(gè)表里存放數(shù)據(jù)庫(kù)當(dāng)前版本、最近檢查/修復(fù)(對(duì)Access)、關(guān)聯(lián)設(shè)計(jì)文檔的名稱、客戶等信息。這樣可以實(shí)現(xiàn)一種簡(jiǎn)單機(jī)制跟蹤數(shù)據(jù)庫(kù),當(dāng)客戶抱怨他們的數(shù)據(jù)庫(kù)沒有達(dá)到希望的要求而與你聯(lián)系時(shí),這樣做對(duì)非客戶機(jī)/服務(wù)器環(huán)境特別有用。
  4. 測(cè)試、測(cè)試、反復(fù)測(cè)試
  建立或者修訂數(shù)據(jù)庫(kù)之后,必須用用戶新輸入的數(shù)據(jù)測(cè)試數(shù)據(jù)字段。最重要的是,讓用戶進(jìn)行測(cè)試并且同用戶一道保證你選擇的數(shù)據(jù)類型滿足商業(yè)要求。測(cè)試需要在把新數(shù)據(jù)庫(kù)投入實(shí)際服務(wù)之前完成。
  5. 檢查設(shè)計(jì)
  在開發(fā)期間檢查數(shù)據(jù)庫(kù)設(shè)計(jì)的常用技術(shù)是通過其所支持的應(yīng)用程序原型檢查數(shù)據(jù)庫(kù)。換句話說(shuō),針對(duì)每一種最終表達(dá)數(shù)據(jù)的原型應(yīng)用,保證你檢查了數(shù)據(jù)模型并且查看如何取出數(shù)據(jù)。
  6. Access 設(shè)計(jì)技巧
  對(duì)復(fù)雜的Microsoft Access 數(shù)據(jù)庫(kù)應(yīng)用程序而言,可以把所有的主表放在一個(gè)數(shù)據(jù)庫(kù)文件里,然后增加其他數(shù)據(jù)庫(kù)文件和裝載同原有數(shù)據(jù)庫(kù)有關(guān)的特殊函數(shù)。根據(jù)需要用這些函數(shù)連接到主文件中的主表。比如數(shù)據(jù)輸入、數(shù)據(jù)QC、統(tǒng)計(jì)分析、向管理層或者政府部門提供報(bào)表以及各類只讀查詢等。這一措施簡(jiǎn)化了用戶和組權(quán)限的分配,而且有利于應(yīng)用程序函數(shù)的分組和劃分,從而在程序必須修改的時(shí)候易于管理。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多