發(fā)布時(shí)間:2022-12-31 07:49:18
序言:寫(xiě)作是分享個(gè)人見(jiàn)解和探索未知領(lǐng)域的橋梁,我們?yōu)槟x了8篇的數(shù)據(jù)庫(kù)設(shè)計(jì)樣本,期待這些樣本能夠?yàn)槟峁┴S富的參考和啟發(fā),請(qǐng)盡情閱讀。
關(guān)鍵詞:數(shù)據(jù)庫(kù);設(shè)計(jì);技巧
中圖分類(lèi)號(hào):TP311.13
一般來(lái)說(shuō)數(shù)據(jù)庫(kù)的設(shè)計(jì)與系統(tǒng)運(yùn)行的效率有很大關(guān)系,一定要全面顧及到數(shù)據(jù)的統(tǒng)一性、全面性、可靠性以及其延伸性。數(shù)據(jù)庫(kù)設(shè)計(jì)需達(dá)到的一個(gè)標(biāo)準(zhǔn),達(dá)到這些標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)都有下述一些共同的優(yōu)點(diǎn):結(jié)構(gòu)分明、簡(jiǎn)潔,而且不會(huì)出現(xiàn)插入、刪除以及更新等操作問(wèn)題。我將數(shù)據(jù)庫(kù)設(shè)計(jì)經(jīng)驗(yàn)以及技巧作為切入點(diǎn),進(jìn)行深入的分析,相關(guān)內(nèi)容如下所述。
1 數(shù)據(jù)庫(kù)的類(lèi)型
一般都會(huì)按照使用的需求去選用相應(yīng)的數(shù)據(jù)庫(kù)。在目前的市場(chǎng)中,基本將數(shù)據(jù)庫(kù)分為下述幾類(lèi):大型數(shù)據(jù)庫(kù),中小型數(shù)據(jù)庫(kù)以及小型數(shù)據(jù)庫(kù)。
其基本原則為下述:
(1)系統(tǒng)數(shù)據(jù)量較多,對(duì)相關(guān)的性能需求較高,數(shù)據(jù)的密級(jí)高,要顧及到優(yōu)化等問(wèn)題,這樣的情況一般使用大型數(shù)據(jù)庫(kù)。
(2)系統(tǒng)數(shù)據(jù)信息不多,容易進(jìn)行操作且方便管理,數(shù)據(jù)庫(kù)基本可以保持穩(wěn)定,這樣一般都會(huì)使用中小型數(shù)據(jù)庫(kù)。
(3)系統(tǒng)數(shù)據(jù)量很小,其系統(tǒng)投資少,這樣就可以選擇使用小型數(shù)據(jù)庫(kù)。
2 數(shù)據(jù)庫(kù)對(duì)象以及物理模型設(shè)計(jì)技巧
針對(duì)對(duì)象的模型設(shè)計(jì),要與客戶(hù)進(jìn)行交流,深入地了解客戶(hù)所想要的,且要顧及到客戶(hù)的需求延伸。基于IPO設(shè)計(jì)理念進(jìn)行工作,深化功能模塊的處理、輸出以及輸入,且具體到所有屬性,全面地掌握和本系統(tǒng)有關(guān)的外部接口以及數(shù)據(jù)。用建模工具構(gòu)建ER圖表,且在每一字段細(xì)致地做出標(biāo)注以及詳解,對(duì)對(duì)象命名進(jìn)行規(guī)范化處理,以便進(jìn)行維護(hù)。
表設(shè)計(jì)的標(biāo)準(zhǔn)以及規(guī)范化。數(shù)據(jù)的硬性指標(biāo)是以范式去定義的,常規(guī)的數(shù)據(jù)庫(kù)設(shè)計(jì)都是依附于第三范式,由于第三范式被認(rèn)為在延伸性、數(shù)據(jù)全面性以及性能等方面都達(dá)到最佳的平衡。不過(guò)很多時(shí)候,為了其效率與特殊的需求,可以選擇非常規(guī)范式指標(biāo)的設(shè)計(jì)。
第一點(diǎn),編碼與參數(shù)要利用表維護(hù),字段命名要構(gòu)建相同命名的規(guī)范,中文詳解要盡可能地細(xì)致。
第二點(diǎn),顧及到一些改變。在構(gòu)建數(shù)據(jù)庫(kù)表字段的時(shí)候,要全面顧及到哪些字段以后會(huì)出現(xiàn)變更的情況。
第三點(diǎn),選擇自定義出現(xiàn)次數(shù)多的字段,這樣以便于進(jìn)行修改以及調(diào)整。比如日期、備注以及金額等。
第四點(diǎn),設(shè)計(jì)那些較為常用的隱藏字段去實(shí)現(xiàn)一些特殊要求,如加設(shè)刪除標(biāo)記的字段、數(shù)據(jù)構(gòu)建的日期以及數(shù)據(jù)調(diào)整的日期等。
一般的視圖是為應(yīng)用程序?qū)?shù)據(jù)抽象而構(gòu)建的,全面利用視圖能夠深化數(shù)據(jù)庫(kù)設(shè)計(jì)的多元性。針對(duì)視圖構(gòu)建要防止非關(guān)聯(lián)查詢(xún)操作。一般的視圖設(shè)計(jì)要采用相應(yīng)的數(shù)據(jù)庫(kù)性能分析軟件,從根本整合視圖性能,持續(xù)地去改進(jìn)。
較為繁重的數(shù)據(jù)運(yùn)算、業(yè)務(wù)參數(shù)處理一般都是利用存儲(chǔ)過(guò)程去完成的,因?yàn)樾阅茌^為優(yōu)異、處理效率高以及易于修改。存儲(chǔ)環(huán)節(jié)編寫(xiě)要利用性能分析軟件實(shí)施檢測(cè)并予以分析,持續(xù)優(yōu)化存儲(chǔ)。針對(duì)核心代碼,要予以必要的加密功能。
不要輕易使用觸發(fā)器,那樣會(huì)在調(diào)試環(huán)節(jié)為你造成很多不必要的麻煩。一般設(shè)計(jì)過(guò)程中要了解觸發(fā)的先決條件,通過(guò)一定的分析而去選擇觸發(fā)模式,而且還要顧及到此表的操作是不是影響到其余表。
3 文件管理
一般來(lái)說(shuō)數(shù)據(jù)庫(kù)配置文件可以把數(shù)據(jù)與日志文件放到系統(tǒng)可靠并有一定空間的位置;數(shù)據(jù)文件可以設(shè)置成增量擴(kuò)展,而且還能按照數(shù)據(jù)量的多少予以設(shè)置;可以將數(shù)據(jù)庫(kù)設(shè)置成差異備份,按時(shí)進(jìn)行較為全面的備份。
4 對(duì)數(shù)據(jù)進(jìn)行全面性設(shè)計(jì)技巧
要實(shí)體全面性。利用主鍵以及聯(lián)合主鍵進(jìn)行控制,可以使用系統(tǒng)編碼,而不是使用業(yè)務(wù)編號(hào)進(jìn)行控制。父表里的插入、刪除以及更新數(shù)據(jù)。刪除方式要利用級(jí)聯(lián)刪除,權(quán)限刪除以及置空值等;插入操作則利用權(quán)限插入以及遞歸插入方法;對(duì)數(shù)據(jù)進(jìn)行更新則利用級(jí)聯(lián)更新,權(quán)限更新以及置空值等技巧。用戶(hù)定義的全面性,NOT NULL,觸發(fā)器以及CHECK。針對(duì)松散耦合數(shù)據(jù),不需要利用數(shù)據(jù)庫(kù)設(shè)計(jì)去確保數(shù)據(jù)的全面性以及完整性,尤其是業(yè)務(wù)的約束,利用應(yīng)用程序去完成,從而不會(huì)因?yàn)橄到y(tǒng)受到過(guò)多的局限,而發(fā)生數(shù)據(jù)庫(kù)異常的情況。
5 針對(duì)表設(shè)計(jì)相應(yīng)技巧
經(jīng)常對(duì)應(yīng)很多編碼的字段,如果應(yīng)用十分繁雜,且數(shù)據(jù)量較多,那么就要考慮在表中加設(shè)冗余字段,可以加上設(shè)備的編號(hào),也可以增加設(shè)備的命名字段等,從而就能夠防止過(guò)多的操作其他表,以便于程序的編寫(xiě)以及提升系統(tǒng)的運(yùn)行效率。加設(shè)記錄日志以及數(shù)據(jù)版本的字段,這樣有利于系統(tǒng)實(shí)施管理與跟蹤,按照相應(yīng)的實(shí)際情況進(jìn)行設(shè)計(jì)。針對(duì)數(shù)據(jù)量多,且需保存的數(shù)據(jù)庫(kù)表,可以使用歷史表,從而去保存出現(xiàn)的數(shù)據(jù),以便提供數(shù)據(jù)的備份以及對(duì)現(xiàn)有數(shù)據(jù)的使用。
6 檢查數(shù)據(jù)庫(kù)設(shè)計(jì)以及幫助文檔的技巧
在數(shù)據(jù)庫(kù)的設(shè)計(jì)過(guò)程里,都會(huì)選擇一些數(shù)據(jù)庫(kù)設(shè)計(jì)軟件,其中包括Power Desiger,數(shù)據(jù)庫(kù)表設(shè)計(jì)結(jié)束后,要有檢查數(shù)據(jù)庫(kù)表設(shè)計(jì)的良好習(xí)慣。
數(shù)據(jù)庫(kù)設(shè)計(jì)工作者要深化經(jīng)常查閱數(shù)據(jù)庫(kù)幫助文檔的工作習(xí)慣,認(rèn)真地比對(duì)以及檢查相應(yīng)功能函數(shù)與設(shè)計(jì)措施的迥異。
7 總結(jié)
針對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中的側(cè)重點(diǎn),是要在數(shù)據(jù)庫(kù)設(shè)計(jì)的過(guò)程里去感受、對(duì)比、總結(jié)以及分析的。一個(gè)優(yōu)秀的系統(tǒng)與數(shù)據(jù)庫(kù)的設(shè)計(jì)密不可分,所以數(shù)據(jù)庫(kù)工作者對(duì)數(shù)據(jù)庫(kù)的設(shè)計(jì)要有較為深入的認(rèn)識(shí)以及靈活多變的設(shè)計(jì)技巧。
參考文獻(xiàn):
[1]姚卿達(dá).漢字情報(bào)檢索系統(tǒng)CCIRS研究報(bào)告(Ⅱ)――數(shù)據(jù)庫(kù)設(shè)計(jì)的多級(jí)方法[J].中山大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,14(22):1814-1819.
[2]申玉靜,譚業(yè)武.數(shù)據(jù)庫(kù)案例教學(xué)在計(jì)算機(jī)專(zhuān)業(yè)專(zhuān)科教育職業(yè)化改革中的應(yīng)用與研究[J].福建電腦,2010,12(16):1031-1036.
[3]姜卉芝,錢(qián)麗瑾.LotusNotes數(shù)據(jù)庫(kù)設(shè)計(jì)[A].數(shù)據(jù)庫(kù)研究進(jìn)展2012――第十四屆全國(guó)數(shù)據(jù)庫(kù)學(xué)術(shù)會(huì)議論文集(下),2012,11(12):1004-1006.
[4]王正山.在ASP中利用SQL語(yǔ)句實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁(yè)與WEB數(shù)據(jù)庫(kù)的連接[J].安慶師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2011,13(03):293-295.
[5]馬垣,張紅云,李曉瑞,劉剛,張小平,馬文勝.關(guān)系數(shù)據(jù)庫(kù)中基于拓?fù)淇臻g的聚類(lèi)方法[A].第十八屆全國(guó)數(shù)據(jù)庫(kù)學(xué)術(shù)會(huì)議論文集(研究報(bào)告篇),2011,17(04):372-373.
[6]吳連喜.農(nóng)化服務(wù)關(guān)系型數(shù)據(jù)庫(kù)的設(shè)計(jì)[A].青年學(xué)者論土壤與植物營(yíng)養(yǎng)科學(xué)――第七屆全國(guó)青年土壤暨第二屆全國(guó)青年植物營(yíng)養(yǎng)科學(xué)工作者學(xué)術(shù)討論會(huì)論文集,2013,11(02):178-181.
[7]許偉成,姚亞明,余立軍,林志軍.廣域網(wǎng)下異構(gòu)遠(yuǎn)程數(shù)據(jù)庫(kù)的包裝入網(wǎng)技術(shù)[A].中國(guó)土木工程學(xué)會(huì)計(jì)算機(jī)應(yīng)用分會(huì)第七屆年會(huì)土木工程計(jì)算機(jī)應(yīng)用文集,2013,15(06):692-671.
關(guān)鍵詞:數(shù)據(jù)庫(kù)設(shè)計(jì);可擴(kuò)展;對(duì)象;關(guān)系數(shù)據(jù)庫(kù)
中圖分類(lèi)號(hào):TP311.131文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):16727800(2011)012017302
作者簡(jiǎn)介:劉學(xué)(1983-),男,山東鄆城人,碩士,菏澤學(xué)院教務(wù)處助教,研究方向?yàn)榫W(wǎng)絡(luò)信息系統(tǒng)。
0引言
數(shù)據(jù)庫(kù)設(shè)計(jì)是建立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng)的技術(shù),是信息系統(tǒng)開(kāi)發(fā)和建設(shè)的核心。數(shù)據(jù)庫(kù)設(shè)計(jì)是指對(duì)于給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫(kù)模式,建立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足各種用戶(hù)的應(yīng)用要求(信息要求和處理要求)。
數(shù)據(jù)庫(kù)設(shè)計(jì)的核心問(wèn)題是建立模型。一般而言這個(gè)模型要滿足兩類(lèi)準(zhǔn)則:結(jié)構(gòu)準(zhǔn)則和性能準(zhǔn)則。前者主要考慮如何保持?jǐn)?shù)據(jù)的特性,后者主要考慮資源的合理使用和數(shù)據(jù)庫(kù)的存儲(chǔ)效率。在所有數(shù)據(jù)庫(kù)設(shè)計(jì)準(zhǔn)則中最重要的原則是:最終產(chǎn)品必須滿足用戶(hù)的最終要求。但是,首先需要存儲(chǔ)的信息是動(dòng)態(tài)的,應(yīng)用自身的發(fā)展也會(huì)產(chǎn)生新的和擴(kuò)展的信息需求;其次,信息化是分步進(jìn)行的,用戶(hù)很難一次提出完整的需求;第三,用戶(hù)和設(shè)計(jì)人員之間存在理解上的差異。因此,數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)在完成以后,系統(tǒng)功能很可能不能完全滿足用戶(hù)需求,而且隨著時(shí)間的發(fā)展系統(tǒng)功能會(huì)逐漸偏離用戶(hù)或企業(yè)的需求。所以,數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)必須要不斷地改進(jìn)和擴(kuò)展以適應(yīng)環(huán)境的變化以及組織自身的發(fā)展需求。
目前數(shù)據(jù)庫(kù)設(shè)計(jì)普遍采用“需求驅(qū)動(dòng)”的數(shù)據(jù)庫(kù)設(shè)計(jì)模式。但是,如果在數(shù)據(jù)庫(kù)設(shè)計(jì)階段,建立數(shù)據(jù)庫(kù)模型時(shí)沒(méi)有充分考慮到數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)以后可能的改變及擴(kuò)展,將使系統(tǒng)以后的維護(hù)工作變得極其困難,甚至必須重新開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)。本文針對(duì)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開(kāi)發(fā)過(guò)程中遇到的動(dòng)態(tài)可擴(kuò)展問(wèn)題提出了一種數(shù)據(jù)庫(kù)設(shè)計(jì)模型――基于鍵值對(duì)的對(duì)象屬性可擴(kuò)展模型,它區(qū)分了應(yīng)用中的不同對(duì)象的類(lèi)型,通過(guò)設(shè)計(jì)屬性分類(lèi)提高了數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中數(shù)據(jù)的可改變性和可擴(kuò)展性。
1信息系統(tǒng)中的傳統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)模型
通常,在傳統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)模型中,設(shè)計(jì)人員在設(shè)計(jì)階段總是將數(shù)據(jù)信息表達(dá)的盡可能豐富,使其不僅滿足所有需求分析階段得到的用戶(hù)需求,而且還要盡可能考慮到應(yīng)用以后可能的改變以及擴(kuò)展。采用這種方式設(shè)計(jì)的數(shù)據(jù)庫(kù)應(yīng)用不僅數(shù)據(jù)表過(guò)于“臃腫”,而且對(duì)于未來(lái)的應(yīng)用難于改變或者擴(kuò)展。
例如,在某校園建筑管理信息系統(tǒng)中,系統(tǒng)成立初期,只要求該系統(tǒng)能夠展示建筑的基本信息,如名稱(chēng)、簡(jiǎn)述等。設(shè)計(jì)人員有可能將數(shù)據(jù)表格設(shè)計(jì)成,我們稱(chēng)之為方案1。包括編號(hào)、建筑名稱(chēng)、建筑描述是建筑的最基本屬性,此外設(shè)計(jì)人員也考慮到了系統(tǒng)將來(lái)的擴(kuò)展,加入了諸如建設(shè)日期,高度,等屬性。由于設(shè)計(jì)人員不可能完全預(yù)見(jiàn)學(xué)校未來(lái)發(fā)展?fàn)顩r,所以對(duì)于系統(tǒng)現(xiàn)階段的需求來(lái)說(shuō),盡管建筑信息表已經(jīng)非常詳盡了,但是隨著時(shí)間的推移系統(tǒng)仍有可能不適應(yīng)實(shí)際需求。
隨著需求的發(fā)展,建筑的信息需求有可能發(fā)生變化。例如:①為了獲取建筑質(zhì)量,有可能對(duì)該建筑的施工文件等信息保存;②隨著校園信息系統(tǒng)的建立,可能有更多的不同類(lèi)型的建筑需要存入系統(tǒng),比如管道信息,一些標(biāo)志性雕塑,或者植被信息;③隨著系統(tǒng)的擴(kuò)展,原有數(shù)據(jù)表可能不能滿足日益增多的該類(lèi)建筑所有信息的存儲(chǔ),所以需要建立新的數(shù)據(jù)表擴(kuò)展其屬性;④對(duì)于一些簡(jiǎn)單的建筑或者物體比如一棵樹(shù)一個(gè)石凳,存儲(chǔ)的信息明顯和一座教學(xué)樓不同,需要按照類(lèi)型的不同,設(shè)計(jì)多個(gè)不同的數(shù)據(jù)表分別存儲(chǔ)不同類(lèi)型的物體信息。
2數(shù)據(jù)庫(kù)設(shè)計(jì)中的擴(kuò)展性需求
在應(yīng)用中,類(lèi)似這樣的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)改變以及應(yīng)用擴(kuò)展的情況還有很多。如果用傳統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)模型,那么在設(shè)計(jì)初始階段就必須考慮到應(yīng)用未來(lái)所有的改變及擴(kuò)展,盡可能使表格的信息詳盡,否則當(dāng)應(yīng)用發(fā)生改變或擴(kuò)展時(shí),必須重新設(shè)計(jì)表結(jié)構(gòu),并對(duì)應(yīng)用程序中相關(guān)片段全部重寫(xiě)。如果同一變化出現(xiàn)在不同部位,由于不同的原因,出現(xiàn)在不同的階段,那么現(xiàn)有表結(jié)構(gòu)不能滿足要求;如果需要增加過(guò)多的對(duì)象屬性信息,那么表結(jié)構(gòu)將必須修改。但是,如果我們將數(shù)據(jù)對(duì)象化,并采用定義其屬性和值的設(shè)計(jì)模型,上述問(wèn)題將迎刃而解。
作為開(kāi)發(fā)人員,總會(huì)面對(duì)業(yè)務(wù)方提出的數(shù)據(jù)結(jié)構(gòu)變化的需求,字段的增加,數(shù)據(jù)表的修改總是隨時(shí)可能根據(jù)需求發(fā)生。因?yàn)闃I(yè)務(wù)在發(fā)展,或者需求就有可能需要一個(gè)完全動(dòng)態(tài)的可擴(kuò)展的數(shù)據(jù)庫(kù)設(shè)計(jì)方案,但是以目前的關(guān)系數(shù)據(jù)庫(kù)實(shí)現(xiàn)這種動(dòng)態(tài)擴(kuò)展的特性,在系統(tǒng)一定規(guī)模之后所付出的代價(jià)是昂貴的,也是不安全的。為了這種動(dòng)態(tài)擴(kuò)展性,有這樣三種常用的方法:
第一種方法:預(yù)留字段。既然很難加字段,就預(yù)先留好一些備用,但是這樣沒(méi)那么靈活,有一定的實(shí)用性,不過(guò)因?yàn)轭A(yù)先留的字段一般是沒(méi)什么含義的,需要有額外的信息來(lái)描述,這種方法在擴(kuò)展性要求不是太強(qiáng)的地方可以不影響性能的前提下提供一定的擴(kuò)展性。
第二種方法:使用復(fù)雜字段。在某些特殊要求下還是很有用的,比如,某個(gè)業(yè)務(wù)實(shí)體(某張表),有一些標(biāo)記位,都是true/false的標(biāo)記,可以理解為這個(gè)實(shí)體的一些屬性,經(jīng)常需要添加,這種情況,在生產(chǎn)中我們使用過(guò)用一個(gè)數(shù)字,按位來(lái)表示這些標(biāo)記的,比如第三位表示他是不是付費(fèi)用戶(hù),第四位表示他是合作方來(lái)的用戶(hù)還是自己注冊(cè)的,等等。還有一種情況,需要更復(fù)雜的屬性列表,屬性個(gè)數(shù)經(jīng)常變,可以考慮使用一個(gè)文本字段,保存結(jié)構(gòu)化的數(shù)據(jù),然后在使用時(shí)需要?jiǎng)討B(tài)解析該字段。使用復(fù)雜字段的好處就在于比較靈活,同一類(lèi)型的數(shù)據(jù)可以放在一起(實(shí)際上相當(dāng)于把應(yīng)該是一個(gè)關(guān)聯(lián)表的數(shù)據(jù)放一個(gè)字段里了),操作的性能也不錯(cuò),但是復(fù)雜字段里面的內(nèi)容查詢(xún)比較困難,程序?qū)崿F(xiàn)和修改起來(lái)也更復(fù)雜。
第三種方法:將數(shù)據(jù)的存儲(chǔ)和索引(需要查詢(xún)的內(nèi)容)分開(kāi)存放,相當(dāng)于主表就一個(gè)keyvalue,把需要查詢(xún)的字段放到其他單獨(dú)的表里去,這種方法對(duì)數(shù)據(jù)的實(shí)時(shí)查詢(xún)的效率有一定的影響,但是針對(duì)實(shí)時(shí)性的要求并不是所有系統(tǒng)都有要求的,在有些地方是很好的解決方案。
3基于鍵值對(duì)的對(duì)象屬性可擴(kuò)展模型
本文的基于鍵值對(duì)的對(duì)象屬性可擴(kuò)展模型就是結(jié)合上面提到的第三種方法,使用數(shù)據(jù)表分別單獨(dú)存儲(chǔ)對(duì)象分類(lèi)和分類(lèi)的屬性信息的定義,并且實(shí)現(xiàn)了分類(lèi)屬性之間的樹(shù)形的可擴(kuò)展結(jié)構(gòu),對(duì)象信息的存儲(chǔ)用過(guò)一張表用來(lái)存儲(chǔ)所有對(duì)象公有的可快速查詢(xún)的數(shù)據(jù)信息,另一張屬性值表存儲(chǔ)所有的對(duì)象的特有屬性的keyvalue。通過(guò)這樣的設(shè)計(jì)可以在不修改原數(shù)據(jù)表結(jié)構(gòu)的前提下,實(shí)現(xiàn)所有存儲(chǔ)對(duì)象的動(dòng)態(tài)可擴(kuò)展,如圖1所示。
圖1對(duì)象屬性信息結(jié)構(gòu)模型
由圖1所示,表t_class保存對(duì)象的分類(lèi)信息如建筑,管道,雕塑等;t_attibute_def保存的是每個(gè)分類(lèi)所對(duì)應(yīng)對(duì)象的屬性信息如建筑的高度,施工單位等;t_entity保存的是分類(lèi)對(duì)象的公共信息,是具體的物體如1號(hào)教學(xué)樓;t_entity_content保存每個(gè)具體的對(duì)象所有屬性的信息值;t?_file表用來(lái)保存一些擴(kuò)展的文件信息。通過(guò)這樣一個(gè)模型我們可以在需要是動(dòng)態(tài)定義一個(gè)大的分類(lèi)并且可以動(dòng)態(tài)的設(shè)置每個(gè)已有分類(lèi)擁有哪些屬性,所有對(duì)象的的具體內(nèi)容分別存儲(chǔ)在對(duì)象公共信息表,對(duì)象屬性信息表和文件信息表中。
在實(shí)際應(yīng)用中,還涉及到屬性冗余,查詢(xún),修改等方面的問(wèn)題,通過(guò)在校園管理系統(tǒng)中應(yīng)用的結(jié)果來(lái)看,這些都可以實(shí)現(xiàn),并能獲得較好的效率。
4結(jié)束語(yǔ)
綜上所述,傳統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)適用于簡(jiǎn)單的、業(yè)務(wù)數(shù)據(jù)固定或變化極少的集中式數(shù)據(jù)庫(kù)應(yīng)用。在應(yīng)用范圍更廣需要更靈活數(shù)據(jù)結(jié)構(gòu)的系統(tǒng)中,顯然面向?qū)ο髮傩缘臄U(kuò)展設(shè)計(jì)更加適宜。
隨著網(wǎng)絡(luò)環(huán)境的日益普及,新的應(yīng)用呈現(xiàn)出來(lái)的開(kāi)放性與分布性特點(diǎn),Web應(yīng)用系統(tǒng)也由簡(jiǎn)單的數(shù)據(jù)庫(kù)系統(tǒng)逐具有了更靈活多變應(yīng)用環(huán)境,在這種環(huán)境下,能夠滿足擴(kuò)展和動(dòng)態(tài)改變的需求,將有更廣闊的應(yīng)用前景。參考文獻(xiàn):
[1]薩師煊,王珊.數(shù)據(jù)庫(kù)系統(tǒng)概論(第三版)[M].北京:高等教育出版社,2000.
[2]劉洋,高連生,王斌.一種面向用戶(hù)擴(kuò)展的樹(shù)狀數(shù)據(jù)庫(kù)設(shè)計(jì)模型[J].計(jì)算機(jī)工程與設(shè)計(jì),2006(11).
【論文摘要】介紹了利用數(shù)據(jù)庫(kù)在企業(yè)中實(shí)現(xiàn)對(duì)倉(cāng)庫(kù)的管理,及軟件的設(shè)計(jì)與實(shí)現(xiàn)。
為了實(shí)現(xiàn)對(duì)備品備件及輔助材料倉(cāng)庫(kù)的現(xiàn)代化科學(xué)管理,保證物資和備件管理的安全性、準(zhǔn)確性和可靠性,降低勞動(dòng)強(qiáng)度,提高勞動(dòng)效率,為企業(yè)獲得更多更快的經(jīng)濟(jì)效益,我們開(kāi)發(fā)設(shè)計(jì)了專(zhuān)用的備品備件和輔助材料倉(cāng)庫(kù)管理系統(tǒng)。
系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
1.我們首先對(duì)于原始的手工管理工作進(jìn)行深人調(diào)查,了解備件的收、發(fā)、存物流情況,帳本和管理方式,數(shù)據(jù)統(tǒng)計(jì)等方面進(jìn)行深入調(diào)查,經(jīng)過(guò)總結(jié)其事務(wù)處理流程圖如下:
2.為了實(shí)現(xiàn)利用數(shù)據(jù)庫(kù)對(duì)倉(cāng)庫(kù)進(jìn)行管理,對(duì)用戶(hù)的要求進(jìn)行總體概述和界面描述并進(jìn)行具體的數(shù)據(jù)流分析,其頂層數(shù)據(jù)流程圖如下:(其它層略)數(shù)據(jù)流描述如下:
入出庫(kù)單=編碼十名稱(chēng)+型號(hào)+規(guī)格十圖號(hào)+數(shù)量十單價(jià)+人庫(kù)單位(領(lǐng)料單位)定額=班組編碼+班組名稱(chēng)+金額計(jì)劃單=編碼+名稱(chēng)+型號(hào)十規(guī)格+圖號(hào)+申報(bào)數(shù)量+申報(bào)日期系統(tǒng)命令=備件錄人}系統(tǒng)查詢(xún)!系統(tǒng)統(tǒng)計(jì).報(bào)表打印}生成計(jì)劃表格=全廠車(chē)間消耗表I收發(fā)存表}庫(kù)存清單l消耗明細(xì)表}消耗日?qǐng)?bào)
3.將宏觀管理轉(zhuǎn)化為數(shù)據(jù)模型,進(jìn)行系統(tǒng)總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),寫(xiě)出詳細(xì)的設(shè)計(jì)說(shuō)明書(shū)和計(jì)劃任務(wù)書(shū)。我們的設(shè)計(jì)說(shuō)明書(shū)主要內(nèi)容如下:(.l)該軟件系統(tǒng)是以樹(shù)形結(jié)構(gòu)展開(kāi)的,其模塊圖(見(jiàn)圖l一1)
(2)文件結(jié)構(gòu)(外部文件描述)
文件BJR*.DBF BJC*.DBF* .DSH*.DBFLJKC*.DBFC*.DBF GYD*.DBF分別是需求規(guī)格說(shuō)明書(shū)定義的人庫(kù)、出庫(kù)、流水當(dāng)前庫(kù)、單價(jià)庫(kù)存庫(kù)、標(biāo)準(zhǔn)特性編碼庫(kù),他們對(duì)應(yīng)的索引文件分別是BJR*.IDX BJC*.IDX LSH*.IDX DJKC*.IDX GYD*.IDX索引關(guān)鍵字是FBMVV。(*代表備件的各種分類(lèi)如:閥門(mén)類(lèi)、電器類(lèi)、工礦類(lèi)、工藝類(lèi)、軸承類(lèi)、小型機(jī)械、軋機(jī)軸承、儀表等)
(3)模塊描述(以頂層模塊為例)
模塊名:BJMAIN
編號(hào)0.0
功能:本模塊為總控模塊。產(chǎn)生主菜單,接收用戶(hù)對(duì)菜單的選擇而分別進(jìn)人下層模塊。
界面:下屬模塊1.01.11.21.31.41.51.6
處理:CASE
1.調(diào)用模塊1.0系統(tǒng)維護(hù)
2.調(diào)用模塊1.1備件錄入
3.調(diào)用模塊1.2系統(tǒng)查詢(xún)
4.調(diào)用模塊1二3綜合統(tǒng)計(jì)
5.調(diào)用模塊1.4報(bào)表打印
6.調(diào)用模塊1.5計(jì)劃管理ENDCASE
4.我們進(jìn)行了程序代碼的編寫(xiě)、并進(jìn)行了功能測(cè)試、錯(cuò)誤信息測(cè)試、邊界測(cè)試、用戶(hù)測(cè)試和長(zhǎng)期系統(tǒng)維護(hù),經(jīng)過(guò)幾年的實(shí)踐,我們不斷進(jìn)行更新和完善,該系統(tǒng)目前愈來(lái)愈滿足用戶(hù)的要求。
[關(guān)鍵詞]企業(yè)信息收集工作;數(shù)據(jù)庫(kù)設(shè)計(jì);信息化
目前,怎樣讓信息收集工作的質(zhì)量得到加強(qiáng),成為了醫(yī)院發(fā)展過(guò)程中的一項(xiàng)重要工作。而且隨著我國(guó)市場(chǎng)化發(fā)展的進(jìn)步,醫(yī)院的數(shù)據(jù)庫(kù)設(shè)計(jì)也迎來(lái)了全新的發(fā)展時(shí)代,現(xiàn)如今數(shù)據(jù)收集的復(fù)雜化、智能化的實(shí)現(xiàn),是這項(xiàng)工作取得進(jìn)步的最好證明。該就以企業(yè)信息收集的意義為角度,來(lái)具體地討論一下如何對(duì)數(shù)據(jù)庫(kù)進(jìn)行規(guī)范化的設(shè)計(jì)。
1數(shù)據(jù)庫(kù)設(shè)計(jì)工作的規(guī)范化
在醫(yī)院信息收集工作中的意義醫(yī)院在對(duì)信息收集的時(shí)候,一定要確保數(shù)據(jù)能夠具有較高的質(zhì)量,同時(shí)還要確保收集的高效率。醫(yī)院若想在競(jìng)爭(zhēng)激烈的環(huán)境中保持一定的競(jìng)爭(zhēng)力,就必須要做好信息收集工作,這樣才能夠跟得上時(shí)展的腳步,同時(shí)也是醫(yī)院能夠得到持續(xù)發(fā)展的重要一步。隨著我國(guó)現(xiàn)代化水平的提高,信息產(chǎn)業(yè)也迎來(lái)了發(fā)展機(jī)遇。特別是醫(yī)院的信息收集工作,它獨(dú)特的信息化特點(diǎn)已經(jīng)成為了醫(yī)院發(fā)展的重要構(gòu)成部分。醫(yī)院若想完成信息化建設(shè),就一定要和信息收集工作相結(jié)合,如此一來(lái),就可以很大程度地提升工作效率,而且也能夠?yàn)殚L(zhǎng)遠(yuǎn)發(fā)展打下一個(gè)堅(jiān)實(shí)的基礎(chǔ)。另外,數(shù)據(jù)庫(kù)設(shè)計(jì)質(zhì)量如何,更是能夠決定醫(yī)院信息化發(fā)展的程度,確保數(shù)據(jù)庫(kù)設(shè)計(jì)的質(zhì)量,可以作信息化建設(shè)工作更加的具有意義。不過(guò)現(xiàn)在,很多醫(yī)院在信息收集工作方面是存在很大的問(wèn)題,不僅沒(méi)有體現(xiàn)出其應(yīng)該具備的效果,而且還對(duì)醫(yī)院的各方面工作造成了一定的影響,影響了醫(yī)院信息化發(fā)展。而之所以會(huì)出現(xiàn)這方面的問(wèn)題,主要的原因在于數(shù)據(jù)庫(kù)設(shè)計(jì)人員的能力有限。醫(yī)院之所以開(kāi)展數(shù)據(jù)庫(kù)設(shè)計(jì),主要是想讓醫(yī)院能夠找到更多的數(shù)據(jù)搜索方式,不過(guò)這也因此增加了數(shù)據(jù)庫(kù)設(shè)計(jì)工作的難度,從而讓醫(yī)院的相關(guān)工作人員在梳理信息收集工作和信息化建設(shè)這兩者的關(guān)系上顯得并不合理。
怎樣以最快的速度讓醫(yī)院獲得更加方便的數(shù)據(jù)收集方式,成為了相關(guān)工作人員急需到的重要工作項(xiàng)目。醫(yī)院信息收集工作本身具有統(tǒng)一性,而且所有部分的工作都存在著一定的聯(lián)系,對(duì)于所有醫(yī)院工作人員來(lái)說(shuō),必須要準(zhǔn)確的掌握好數(shù)據(jù)收集工作和信息化建設(shè)的關(guān)系,數(shù)據(jù)庫(kù)設(shè)計(jì)工作才能夠取得進(jìn)步。醫(yī)院的相關(guān)負(fù)責(zé)人若想通過(guò)磋商的辦法來(lái)解決收集工作和信息化之間的關(guān)系,那么就一定要?jiǎng)?chuàng)建出一套合理的數(shù)據(jù)庫(kù)設(shè)計(jì)規(guī)范制度。醫(yī)院的數(shù)據(jù)庫(kù)設(shè)計(jì)工作在信息化建設(shè)中占據(jù)著重要的位置,而從信息收集的角度考慮的話,加強(qiáng)數(shù)據(jù)庫(kù)的建設(shè),可以充分展現(xiàn)出其智能化、高效化的重要舉措。而且也意味著在信息收集和信息化工作上架起了一個(gè)結(jié)實(shí)的紐帶。數(shù)據(jù)庫(kù)設(shè)計(jì)始終涵蓋于信息收集工作的任何階段,其中的任何一項(xiàng)任務(wù),都能夠決定企業(yè)開(kāi)展信息收集工作的方向,同時(shí)也能夠確定信息收集工作的性質(zhì)。另外,加強(qiáng)數(shù)據(jù)庫(kù)設(shè)計(jì)工作,能夠讓醫(yī)院工作人員掌握好信息收集工作和信息化建設(shè)之間的關(guān)系。而只有讓數(shù)據(jù)庫(kù)設(shè)計(jì)具備規(guī)范化,才能夠完全體現(xiàn)出數(shù)據(jù)收集工作的智能化、高效化等突出特點(diǎn),如此一來(lái),信息收集和信息化建設(shè)就可以達(dá)到規(guī)定的目標(biāo)[1]。
2醫(yī)院信息收集質(zhì)量分析
2.1信息收集的基本要求
信息收集具有很多的種類(lèi),不僅需要很多的文字信息,同時(shí)還要收集很多的圖形、聲像等信息。除了要擁有和患者的病理、生理有關(guān)的信息以外,還要收集和醫(yī)療、藥品、設(shè)備有關(guān)的信息,所以提出信息收集的基本要求主要包括:信息收集形式要完善、具有科學(xué)的管理方式、要確保信息的完整性、可靠性、價(jià)值性等等。而以上這些內(nèi)容,則是對(duì)信息收集的最基本要求。
2.2信息缺陷分類(lèi)
①根據(jù)內(nèi)容分,主要包括患者自然信息字段錯(cuò)誤,診斷醫(yī)療關(guān)鍵詞錯(cuò)誤,收費(fèi)信息字段錯(cuò)誤等等。②根據(jù)缺陷的原因,主要包括信息不完備、網(wǎng)絡(luò)被侵害、數(shù)據(jù)丟失、信息沒(méi)有太多利用的價(jià)值,信息不符合相關(guān)標(biāo)準(zhǔn)等等[2]。
3設(shè)計(jì)主要工程
3.1概念結(jié)構(gòu)設(shè)計(jì)階段
3.1.1初始化工程
這方面的工作主要分為2點(diǎn),①目的描述,②范圍描述,同時(shí)還要確定建模的目標(biāo),并制定出建模的具體方案,創(chuàng)建建模團(tuán)隊(duì),收集各種資料。其中,最主要的工作就是對(duì)資料的收集。根據(jù)調(diào)查能夠發(fā)現(xiàn),業(yè)務(wù)流程、報(bào)表等是基本數(shù)據(jù)資料表的主要構(gòu)成部分。
3.1.2定義實(shí)體
DIEFIX模型值能夠二次聯(lián)系。通過(guò)對(duì)業(yè)務(wù)的實(shí)際情況能夠了解到,必須要通過(guò)實(shí)體聯(lián)系矩陣才可以實(shí)現(xiàn)二次關(guān)系。之后再根據(jù)實(shí)際情況確定出聯(lián)系關(guān)系的勢(shì)、關(guān)系名和說(shuō)明。
3.1.3定義碼
引進(jìn)交叉實(shí)驗(yàn),來(lái)去掉還沒(méi)有得到確認(rèn)的關(guān)系,之后根據(jù)獨(dú)立實(shí)體的情況,去詳細(xì)了解候選碼的屬性,這樣就能夠充分掌握所有實(shí)體的實(shí)例,最后再通過(guò)候選碼,來(lái)確認(rèn)主碼。另外,想要確保主碼的合理性,最好采用非空規(guī)則。
3.1.4定義屬性
根據(jù)源數(shù)據(jù)表里的情況,去選取具有代表性的名詞開(kāi)發(fā)出屬性表,然后明確屬性的擁有者。給非主碼屬性一個(gè)準(zhǔn)確的定位,之后檢驗(yàn)屬性的非空規(guī)則。另外,也要檢驗(yàn)函數(shù)規(guī)則,確保非主碼屬性能夠依附于主碼。這樣一來(lái),就能夠獲得和關(guān)系理論相符的IDEFIX模型。
3.2邏輯結(jié)構(gòu)設(shè)計(jì)階段
把概念結(jié)構(gòu)有效的轉(zhuǎn)化成能夠得到DBMS融合的數(shù)據(jù)模型,然后在做優(yōu)化處理工作。在對(duì)邏輯結(jié)構(gòu)進(jìn)行設(shè)計(jì)的時(shí)候,最好選用能夠展現(xiàn)有關(guān)概念結(jié)構(gòu)的數(shù)據(jù),之后再選用最為合理的DBMS。之所以要轉(zhuǎn)換關(guān)系模型,主要是為了能夠把實(shí)體以及和實(shí)體有關(guān)的部分全部轉(zhuǎn)換成關(guān)系形式。
3.3數(shù)據(jù)庫(kù)物理設(shè)計(jì)階段
數(shù)據(jù)庫(kù)能否達(dá)到企業(yè)所理想的要求,數(shù)據(jù)庫(kù)物理設(shè)計(jì)非常的重要,同時(shí)也是決定數(shù)據(jù)庫(kù)能否具備適應(yīng)性的關(guān)鍵。而它的重要工作任務(wù),就是要把虛幻的數(shù)據(jù)轉(zhuǎn)換成為物理結(jié)構(gòu),然后通過(guò)對(duì)各種因素的了解,去進(jìn)行設(shè)計(jì)索引等有關(guān)方面的工作,這樣一來(lái),就能夠充分了解實(shí)驗(yàn)設(shè)計(jì)是否具備了充足的適用性[3]。
4數(shù)據(jù)庫(kù)的主要設(shè)計(jì)技巧
①若想加強(qiáng)數(shù)據(jù)庫(kù)的設(shè)計(jì)水平,或者讓數(shù)據(jù)庫(kù)設(shè)計(jì)工作更加具備時(shí)效性,就一定要讓此項(xiàng)工作迎合市場(chǎng)規(guī)律,而想要做好這方面的工作,首先,就是掌握市場(chǎng)對(duì)于數(shù)據(jù)庫(kù)的實(shí)際需求,相關(guān)工作者要和市場(chǎng)部門(mén)進(jìn)行有效的交流與合作,掌握市場(chǎng)的需求,并采用試驗(yàn)等有效方式,去合理的制定數(shù)據(jù)庫(kù)設(shè)計(jì)的目標(biāo),加強(qiáng)數(shù)據(jù)庫(kù)設(shè)計(jì)方面的工作②在設(shè)計(jì)的準(zhǔn)備期,不僅要掌握市場(chǎng)的最新信息,而且還要全面的掌握醫(yī)院業(yè)務(wù)的詳細(xì)情況,這樣就能夠很好的提升設(shè)計(jì)工作的效率。另外,還可以使得數(shù)據(jù)庫(kù)設(shè)計(jì)的效果能夠更加迎合市場(chǎng)需要,這樣就能夠防止設(shè)計(jì)期間由于不了解醫(yī)院的實(shí)際情況而發(fā)生設(shè)計(jì)質(zhì)量問(wèn)題。③如果能夠合理地設(shè)計(jì)數(shù)據(jù)字典和ER圖表,那么就可以教會(huì)相關(guān)工作人員怎樣運(yùn)用數(shù)據(jù)庫(kù)。不過(guò)若想很好地讓數(shù)據(jù)字典以及ER圖具備時(shí)效性,要對(duì)數(shù)據(jù)庫(kù)進(jìn)行完善的整頓,然后再將里面所存有的所有名詞進(jìn)行統(tǒng)一管理。如此一來(lái),就可以讓數(shù)據(jù)字典以及ER圖標(biāo)具有時(shí)效性[4]。
5結(jié)語(yǔ)
通過(guò)以上內(nèi)容能夠了解到,隨著我國(guó)市場(chǎng)化發(fā)展的進(jìn)步,數(shù)據(jù)庫(kù)設(shè)計(jì)也迎來(lái)了全新的發(fā)展時(shí)代,而想要做好這方面工作,相關(guān)工作者就一定要讓數(shù)據(jù)庫(kù)設(shè)計(jì)工作更加具備時(shí)效性,全面掌握市場(chǎng)的最新信息以及醫(yī)院的業(yè)務(wù)、另外,還要采取合理的方式去對(duì)數(shù)據(jù)字典和ER圖表進(jìn)行設(shè)計(jì)。因此在今后的工作中,相關(guān)工作者要積極努力,認(rèn)真探索,爭(zhēng)取制定出更為完善的方案,從而讓數(shù)據(jù)庫(kù)設(shè)計(jì)水平邁向一個(gè)新的高度。
[參考文獻(xiàn)]
[1]郝進(jìn)義.數(shù)據(jù)庫(kù)設(shè)計(jì)規(guī)范及設(shè)計(jì)技巧研究[J].計(jì)算機(jī)光盤(pán)軟件與應(yīng)用,2012(12):176-177.
[2]王麗娟,米西峰.數(shù)據(jù)庫(kù)設(shè)計(jì)規(guī)范及設(shè)計(jì)技巧研究[J].電腦知識(shí)與技術(shù),2015,11(28):12-13.
[3]劉勇.數(shù)據(jù)庫(kù)設(shè)計(jì)技巧及設(shè)計(jì)規(guī)范[J].信息技術(shù)與信息化,2014(5):251-252.
數(shù)據(jù)庫(kù)設(shè)計(jì)系統(tǒng)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)習(xí)慣系統(tǒng)設(shè)計(jì)分為兩個(gè)部分,也可以說(shuō)是兩個(gè)階段,即數(shù)據(jù)庫(kù)設(shè)計(jì)與系統(tǒng)功能設(shè)計(jì)。構(gòu)建一個(gè)完善的系統(tǒng)需要這兩個(gè)階段的充分考量、周密設(shè)計(jì)、合理聯(lián)接以及密切配合。在這兩個(gè)設(shè)計(jì)階段中數(shù)據(jù)庫(kù)設(shè)計(jì)階段是整個(gè)系統(tǒng)設(shè)計(jì)的根基,數(shù)據(jù)庫(kù)設(shè)計(jì)關(guān)乎系統(tǒng)功能實(shí)現(xiàn)度、穩(wěn)定性、擴(kuò)展性等多個(gè)方面的內(nèi)容,其重要性可想而知。然而目前的情況是:從學(xué)校到社會(huì),從教師到學(xué)生,從思想到行動(dòng)都以實(shí)現(xiàn)功能,做上層的表面文章為主流。這不僅會(huì)為系統(tǒng)留下隱患,也將成為整個(gè)軟件開(kāi)發(fā)行業(yè)的隱患。
一、海量數(shù)據(jù)環(huán)境到來(lái)為數(shù)據(jù)庫(kù)設(shè)計(jì)提出的新高度
數(shù)據(jù)庫(kù)設(shè)計(jì)是近些年出現(xiàn)的技術(shù)領(lǐng)域。早期的時(shí)候,數(shù)據(jù)庫(kù)是以一個(gè)黑盒的方式,附屬到某個(gè)系統(tǒng)當(dāng)中的,開(kāi)發(fā)人員對(duì)它的關(guān)注很少。互聯(lián)網(wǎng)的時(shí)代,系統(tǒng)數(shù)據(jù)量呈幾何級(jí)數(shù)激增,數(shù)據(jù)存儲(chǔ)與表示也使用了TB,PB乃至ZB等單位。在這種情況下各種性能問(wèn)題日益凸顯,數(shù)據(jù)庫(kù)由于其載體與容器的身份承擔(dān)了其中的很大一部分。海量數(shù)據(jù)帶來(lái)的存儲(chǔ)、查詢(xún)速度以及容災(zāi)等方面的壓力是這一環(huán)境下的新問(wèn)題。無(wú)論是項(xiàng)目負(fù)責(zé)人、開(kāi)發(fā)人員還是DBA(Database Administrator),都不可回避地要面對(duì)這個(gè)問(wèn)題。
在這種大數(shù)據(jù)環(huán)境下人們對(duì)數(shù)據(jù)庫(kù)性能的優(yōu)劣俞發(fā)關(guān)注,對(duì)系統(tǒng)設(shè)計(jì)階段中的數(shù)據(jù)庫(kù)設(shè)計(jì)階段也提出了新的更高的要求,數(shù)據(jù)庫(kù)功能也正在從數(shù)據(jù)存儲(chǔ)工具的角色轉(zhuǎn)變成數(shù)據(jù)處理器的角色。因此,目前的系統(tǒng)設(shè)計(jì)中也總是將數(shù)據(jù)庫(kù)從系統(tǒng)設(shè)計(jì)中拿出來(lái)單獨(dú)進(jìn)行設(shè)計(jì)。一個(gè)數(shù)據(jù)庫(kù)性能的好壞,通常是在系統(tǒng)設(shè)計(jì)階段就決定了的。
二、好的數(shù)據(jù)庫(kù)設(shè)計(jì)所應(yīng)具備的基本條件
1.充分體現(xiàn)系統(tǒng)的需求
數(shù)據(jù)庫(kù)是為應(yīng)用服務(wù)的,好的數(shù)據(jù)庫(kù)設(shè)計(jì)應(yīng)該首先能滿足應(yīng)用系統(tǒng)的業(yè)務(wù)需求,能夠準(zhǔn)確表達(dá)數(shù)據(jù)間關(guān)系。
2.能夠保證數(shù)據(jù)的準(zhǔn)確性和一致性
通過(guò)主外鍵、非空、限制、唯一索引等保證數(shù)據(jù)的健壯。
3.提高數(shù)據(jù)的查詢(xún)效率
通過(guò)合理表結(jié)構(gòu),安排物理存儲(chǔ)分區(qū)、增加索引等方式,提高數(shù)據(jù)的讀取速度,提高查詢(xún)效率。
4.有好的擴(kuò)展性
好的數(shù)據(jù)庫(kù)設(shè)計(jì)在必要時(shí)應(yīng)能根據(jù)需求進(jìn)行數(shù)據(jù)結(jié)構(gòu)的擴(kuò)展。
三、重視不足的數(shù)據(jù)庫(kù)設(shè)計(jì)的具體體現(xiàn)
不良的數(shù)據(jù)庫(kù)設(shè)計(jì),必然會(huì)造成很多問(wèn)題,輕則增減字段,重則系統(tǒng)無(wú)法運(yùn)行。對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)重視不足在具體設(shè)計(jì)中可體現(xiàn)在很多方面,現(xiàn)列舉其中的部分內(nèi)容:
1.與需求不符
數(shù)據(jù)庫(kù)是需求的直觀反應(yīng)和表現(xiàn)。在數(shù)據(jù)庫(kù)設(shè)計(jì)之前對(duì)用戶(hù)需求沒(méi)有進(jìn)行詳細(xì)了解與必要的分析,在設(shè)計(jì)過(guò)程中也沒(méi)有同用戶(hù)及使用單位進(jìn)行必要的溝通。這樣往往造成數(shù)據(jù)庫(kù)在設(shè)計(jì)上的不實(shí)用。與用戶(hù)需求不符將使整個(gè)系統(tǒng)無(wú)法交付使用。
2.字段設(shè)計(jì)不合理
一是設(shè)計(jì)中缺少必要的字段,造成無(wú)法跟蹤數(shù)據(jù)變化、限制用戶(hù)操作或無(wú)法進(jìn)行數(shù)據(jù)分析。二是字段長(zhǎng)度過(guò)短或字段類(lèi)型過(guò)于明確,使可發(fā)揮、可拓展的空間太小。設(shè)計(jì)不合理的字段如果用于查詢(xún)將造成SQL查詢(xún)語(yǔ)句過(guò)于復(fù)雜,而使查詢(xún)無(wú)法順利進(jìn)行。
3.數(shù)據(jù)完整性喪失
通常指存儲(chǔ)大量數(shù)據(jù)的數(shù)據(jù)表之間的關(guān)聯(lián)過(guò)多,包含主外鍵關(guān)系的數(shù)據(jù)表之間的關(guān)聯(lián)字段設(shè)計(jì)方式不合理,或是多張數(shù)據(jù)表之間耦合度過(guò)高,更新與刪除操作后就容易造成程序出錯(cuò)。
除上述內(nèi)容之外,因?qū)?shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程重視不夠而非技術(shù)不足所造成影響還有很多,在此不一一列舉。需要相關(guān)人員明確的是系統(tǒng)設(shè)計(jì)如同所有項(xiàng)目一樣包括各個(gè)環(huán)節(jié)。例如,汽車(chē)制造過(guò)程包括圖紙?jiān)O(shè)計(jì)、模型制作、樣車(chē)制造、小批量生產(chǎn),最后是批量生產(chǎn)等環(huán)節(jié)。制造過(guò)程環(huán)環(huán)相扣,后一過(guò)程將建立在前一過(guò)程正確的前提基礎(chǔ)之上。很顯然越是初始環(huán)節(jié)出現(xiàn)問(wèn)題對(duì)整個(gè)項(xiàng)目帶來(lái)的打擊越大。在開(kāi)發(fā)順序上由于數(shù)據(jù)庫(kù)設(shè)計(jì)階段位于整個(gè)系統(tǒng)設(shè)計(jì)的前端,因此在此環(huán)節(jié)出現(xiàn)的問(wèn)題其影響是具大的。
四、如何培養(yǎng)良好的數(shù)據(jù)庫(kù)設(shè)計(jì)習(xí)慣
一般來(lái)說(shuō),在系統(tǒng)設(shè)計(jì)時(shí)間與任務(wù)量的安排上,數(shù)據(jù)庫(kù)設(shè)計(jì)至少應(yīng)占用整個(gè)項(xiàng)目開(kāi)發(fā)的60%以上。這樣才能保證系統(tǒng)的強(qiáng)壯、可靠與穩(wěn)定。從事系統(tǒng)設(shè)計(jì)的相關(guān)人員要養(yǎng)成良好的數(shù)據(jù)庫(kù)設(shè)計(jì)習(xí)慣主要應(yīng)從以下兩個(gè)方面著手。
1.轉(zhuǎn)變觀念
首先,很多計(jì)算機(jī)專(zhuān)業(yè)的學(xué)生、教師以及真正的開(kāi)發(fā)設(shè)計(jì)人員受社會(huì)大環(huán)境的影響在學(xué)習(xí)與工作中沒(méi)有踏實(shí)與務(wù)實(shí)的作風(fēng)。再者,很多承擔(dān)專(zhuān)業(yè)教學(xué)的教師沒(méi)有真正的系統(tǒng)設(shè)計(jì)經(jīng)歷,很難給學(xué)生的系統(tǒng)設(shè)計(jì)習(xí)慣進(jìn)行正確的引導(dǎo)。還有,學(xué)習(xí)的動(dòng)力導(dǎo)致學(xué)習(xí)的效果。學(xué)生在學(xué)習(xí)前就已經(jīng)對(duì)各門(mén)專(zhuān)業(yè)課程進(jìn)行了“三六九等”的劃分。認(rèn)為各類(lèi)流行的語(yǔ)言與開(kāi)發(fā)工具是重要的,是簡(jiǎn)歷中的“添彩”之處,是今后工作必備的。其實(shí),各種語(yǔ)言一通則百通,并不需要面面俱到。因此,這就需要“產(chǎn)學(xué)研”人員都能轉(zhuǎn)變觀念,以培養(yǎng)正確的設(shè)計(jì)習(xí)慣。
2.增加大型系統(tǒng)開(kāi)發(fā)經(jīng)歷
大型系統(tǒng)開(kāi)發(fā)其交付后都能具有較高的實(shí)際應(yīng)用價(jià)值,其對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)的要求必然符合其應(yīng)有的地位。之所以在觀念上對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)存在重視不足的問(wèn)題同相關(guān)人員沒(méi)有大型系統(tǒng)開(kāi)發(fā)經(jīng)歷有一定的關(guān)系統(tǒng),開(kāi)發(fā)經(jīng)驗(yàn)總停留在模擬系統(tǒng)階段是無(wú)法真正認(rèn)識(shí)到數(shù)據(jù)庫(kù)設(shè)計(jì)的重要性的。
五、結(jié)語(yǔ)
綜上所述,可見(jiàn)數(shù)據(jù)庫(kù)設(shè)計(jì)在系統(tǒng)設(shè)計(jì)中的作用是舉足輕重的。對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)重要性的忽視必將為整個(gè)系統(tǒng)埋下隱患,對(duì)系統(tǒng)以及開(kāi)發(fā)人員而言所要付出的代價(jià)也將是巨大的。
參考文獻(xiàn):
[1]譚懷遠(yuǎn).讓Oracle跑得更快2――基于海量數(shù)據(jù)的數(shù)據(jù)庫(kù)設(shè)計(jì)與優(yōu)化.電子工業(yè)出版社,2011.
關(guān)鍵詞:數(shù)據(jù)庫(kù)技術(shù);數(shù)據(jù)操作
中圖分類(lèi)號(hào):TP311.13 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2011) 21-0000-02
The Application of Database Technology in the Website Design
Qin Yan1,2
(1.Northwest Normal University,Lanzhou 730070,China;2.Sichuan Staff University of Science and Technology,Chengdu 610101,China)
Abstract:Using the data base technology in the dynamic homepage may nimbly carry on the operation to the data,realizing data screening,inquiring,increasing,the deletion and the revision.This article will detailedly discuss how to use data base technology to realize the data screen,inquiry,increase,deletion and revision in the website.
Keywords:Data base technology;Data operation
前言:隨著Web技術(shù)的發(fā)展和電子商務(wù)時(shí)代的到來(lái),人們并不滿足于僅能靜態(tài)顯示數(shù)據(jù)的網(wǎng)頁(yè),更多的時(shí)候需要能與用戶(hù)進(jìn)行交互,并能提供后臺(tái)數(shù)據(jù)庫(kù)的訪問(wèn)和管理等服務(wù)的動(dòng)態(tài)網(wǎng)站。而一般來(lái)說(shuō),網(wǎng)站的信息量越大,服務(wù)的范圍越廣,信息的分類(lèi)、整理、檢索、保存等就越難。而數(shù)據(jù)庫(kù)技術(shù)正好解決了這種困難,通過(guò)在動(dòng)態(tài)網(wǎng)頁(yè)中運(yùn)用數(shù)據(jù)庫(kù)技術(shù),可以靈活地對(duì)數(shù)據(jù)進(jìn)行操作,實(shí)現(xiàn)數(shù)據(jù)的篩選、查詢(xún)、增加、刪除與修改。可見(jiàn)數(shù)據(jù)庫(kù)技術(shù)大大提高了工作效率,增強(qiáng)了網(wǎng)站的服務(wù)能力和擴(kuò)充能力,很好地解決了維護(hù)和信息的分類(lèi)、整理等問(wèn)題。本文將詳細(xì)討論如何在網(wǎng)站中應(yīng)用數(shù)據(jù)庫(kù)技術(shù)來(lái)實(shí)現(xiàn)數(shù)據(jù)的篩選、查詢(xún)、增加、刪除與修改等功能。
一、數(shù)據(jù)庫(kù)技術(shù)和ADO對(duì)象
(一)什么是數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù),顧名思義是存放數(shù)據(jù)的倉(cāng)庫(kù)。具體來(lái)說(shuō)是長(zhǎng)期儲(chǔ)存在計(jì)算機(jī)內(nèi)的、有組織的、可共享的數(shù)據(jù)集合。當(dāng)人們收集了大量的數(shù)據(jù)后,應(yīng)該把它們保存起來(lái)進(jìn)行近一步的處理,抽取有用的信息。以前人們把數(shù)據(jù)存放在文件柜中,現(xiàn)在隨著社會(huì)的發(fā)展,數(shù)據(jù)量急劇增加,人們就要借助計(jì)算機(jī)和數(shù)據(jù)庫(kù)技術(shù)來(lái)保存大量的數(shù)據(jù),以便能更好的利用這些數(shù)據(jù)資源。
(二)ADO
ADO是ActiveX Data Objects(ActiveX數(shù)據(jù)對(duì)象),是Microsoft公司推出的一項(xiàng)數(shù)據(jù)訪問(wèn)技術(shù),位于OLE DB API之上的、面向?qū)ο蟮摹⑴c語(yǔ)言無(wú)關(guān)的通用數(shù)據(jù)訪問(wèn)接口。OLE DB是一種數(shù)據(jù)訪問(wèn)的技術(shù)標(biāo)準(zhǔn),目的是提供統(tǒng)一的數(shù)據(jù)訪問(wèn)接口,既可以訪問(wèn)DBMS數(shù)據(jù)源,也可以訪問(wèn)非DBMS數(shù)據(jù)源,且不用考慮數(shù)據(jù)的具體存儲(chǔ)地點(diǎn)、格式和類(lèi)型。即ADO可以通過(guò)ODBC技術(shù)訪問(wèn)關(guān)系型數(shù)據(jù)庫(kù),也可以通過(guò)OLE DB API訪問(wèn)符合OLE DB標(biāo)準(zhǔn)的任何數(shù)據(jù)源,包括郵件數(shù)據(jù)、電子表格、Web上的文本或圖形,從這個(gè)意義說(shuō),符合ODBC標(biāo)準(zhǔn)的數(shù)據(jù)源是符合OLE DB標(biāo)準(zhǔn)的數(shù)據(jù)存儲(chǔ)的子集,OLE DB的存取對(duì)象范圍是更為廣泛的數(shù)據(jù)存儲(chǔ)。
二、數(shù)據(jù)庫(kù)技術(shù)在網(wǎng)站中的應(yīng)用
(一)ASP技術(shù)與動(dòng)態(tài)網(wǎng)站
ASP技術(shù)是把HTML文檔、腳本命令和ActiveX控件混合在一個(gè)*.asp文件中,其中腳本命令是*.asp文件的主要組成部分,包含在腳本分界符或HTML的和標(biāo)識(shí)之間。當(dāng)客戶(hù)端瀏覽器向Web服務(wù)器發(fā)出HTTP頁(yè)面請(qǐng)求時(shí),Web服務(wù)器把它傳送給ASP引擎,由ASP引擎解釋其中的ASP腳本代碼。如果需要訪問(wèn)數(shù)據(jù)庫(kù),則向數(shù)據(jù)庫(kù)服務(wù)器請(qǐng)求所需數(shù)據(jù),一并嵌入HTML文件中,將結(jié)果返回給客戶(hù)端瀏覽器。
(二)動(dòng)態(tài)網(wǎng)頁(yè)中數(shù)據(jù)庫(kù)的連接訪問(wèn)
我們可以從ASP頁(yè)面源文件中用腳本語(yǔ)言引用ADO對(duì)象,使用ODBC(Open Database Connectivity)或OLE DB(Object Linking and Embedding Data Base)驅(qū)動(dòng)程序,通過(guò)瀏覽器/服務(wù)器(B/S)模式可以非常輕松地完成對(duì)數(shù)據(jù)庫(kù)的操作。
ADO主要提供了三個(gè)對(duì)象實(shí)施數(shù)據(jù)庫(kù)的訪問(wèn)和操縱,分別為Connection對(duì)象、Command對(duì)象和Recordset對(duì)象。Connection對(duì)象是使得ASP網(wǎng)頁(yè)鏈接到數(shù)據(jù)庫(kù)的一個(gè)對(duì)象,它通過(guò)和ODBC中的Data Source Name的結(jié)合,就可以使網(wǎng)頁(yè)鏈接到數(shù)據(jù)庫(kù)上。Recordset對(duì)象在數(shù)據(jù)庫(kù)文件里,形成一個(gè)指針,指向數(shù)據(jù)庫(kù)文件中的數(shù)據(jù),再利用Recordset所含有的方法,在數(shù)據(jù)庫(kù)文件里上下移動(dòng)指針,移到想要查詢(xún)的數(shù)據(jù)記錄上。Command對(duì)象是介于Connection對(duì)象和Recordset對(duì)象之間的,用來(lái)對(duì)數(shù)據(jù)庫(kù)傳遞SQL(結(jié)構(gòu)化查詢(xún)語(yǔ)言)的指令,并對(duì)數(shù)據(jù)庫(kù)進(jìn)行存取。
三、數(shù)據(jù)庫(kù)訪問(wèn)方法
(一)創(chuàng)建數(shù)據(jù)源
動(dòng)態(tài)創(chuàng)建的ODBC數(shù)據(jù)源(DSN)或在Windows的控制面板中配置ODBC數(shù)據(jù)源(DSN)。
(二)建立數(shù)據(jù)庫(kù)連接
在ASP網(wǎng)頁(yè)中操作數(shù)據(jù)庫(kù)的第一步就是要建立ASP網(wǎng)頁(yè)與數(shù)據(jù)庫(kù)的連接。下面的語(yǔ)句將建立一個(gè)Connection對(duì)象,并設(shè)定由cnnDB對(duì)象變量引用:Set cnnDB=Server.CreateObject(“ADODB.Connection”)
完成了Connection對(duì)象的建立后,接著,我們必須調(diào)用Open方法,才算完成數(shù)據(jù)庫(kù)的連接。其語(yǔ)法格式為:CnnDB.Open字符串,使用者賬號(hào),密碼。當(dāng)使用完Connection對(duì)象后,可以調(diào)用Close方法,關(guān)閉數(shù)據(jù)庫(kù)的連接,語(yǔ)法如下:cnnDB.Close。完成關(guān)閉數(shù)據(jù)庫(kù)的連接后,我們最好再將Connection對(duì)象變量設(shè)為Nothing。語(yǔ)法格式:Set connDB=Nothing
(三)對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作
當(dāng)連接了數(shù)據(jù)庫(kù)后就可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,比如查詢(xún)、刪除、更新等等,ADO提供的Recordset對(duì)象可以根據(jù)您的查詢(xún)限制,通過(guò)SQL指令進(jìn)行檢索,并且顯示一組數(shù)據(jù)庫(kù)行,即記錄。Recordset對(duì)象保持查詢(xún)返回的記錄的位置,允許您一次一項(xiàng)逐步掃描結(jié)果。根據(jù)
Recordset對(duì)象的指針類(lèi)型屬性設(shè)置,您可以滾動(dòng)和更新記錄。數(shù)據(jù)庫(kù)指針可以讓您在一組記錄中定位到特定的項(xiàng)。指針還用于檢索和檢查記錄,然后在這些記錄的基礎(chǔ)上執(zhí)行操作。Recordset的使用方法如下:Set rs=Server.CreateObject("ADODB.Recordset")
s.Open SQL指令,Conn,l,1’讀取
或rs.Open SQL指令,Conn,1,3’新增、修改、或刪除
通過(guò)以上指令,創(chuàng)建了一個(gè)包含數(shù)據(jù)的對(duì)象rs,事實(shí)上對(duì)象是存儲(chǔ)在活動(dòng)內(nèi)存中的類(lèi)似記錄和字段的數(shù)組的東西,當(dāng)通過(guò)RecordSet組件創(chuàng)建一個(gè)對(duì)象時(shí),它從數(shù)據(jù)提供者處得到一個(gè)數(shù)據(jù)集,并用它來(lái)充實(shí)對(duì)象,所創(chuàng)建的RecordSet對(duì)象的一些屬性和方法有:
rs.RecordCount數(shù)據(jù)記錄總數(shù);rs.EOF是否己指到最后一條記錄
rs.MoveNext將指針移到下一條記錄
rs.MovePrev將指針移到上一條記
rs.MoveFirst將指針移到第一條記錄
rs.MoveLast將指針移到最后一條記錄
rs.Close關(guān)閉RecordSet對(duì)象
關(guān)于數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句,在具體設(shè)計(jì)網(wǎng)站時(shí)請(qǐng)參考相關(guān)書(shū)籍。
結(jié)論:ASP作為一種當(dāng)前流行的網(wǎng)站后臺(tái)開(kāi)發(fā)技術(shù),與數(shù)據(jù)庫(kù)管理系統(tǒng)結(jié)合,可以完成各種非常實(shí)用的功能,如留言板,網(wǎng)上投票,聊天室,網(wǎng)上考試及目前最流行的電子商務(wù)。
參考文獻(xiàn):
[1]董長(zhǎng)林.ASP與數(shù)據(jù)庫(kù)在網(wǎng)站開(kāi)發(fā)中的應(yīng)用[J].陜西氣象,2007,1
[2]安i,宋之輝.數(shù)據(jù)庫(kù)與動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)初探[J].大學(xué)學(xué)報(bào)(漢文版),2006,3
[3]周林勇.電子商務(wù)網(wǎng)站與Web數(shù)據(jù)庫(kù)[J].商場(chǎng)現(xiàn)代化,2006,13
[4]姜亞軍,王艷芳.談網(wǎng)站建設(shè)中數(shù)據(jù)庫(kù)的綜合運(yùn)用[J].遼寧教育行政學(xué)院學(xué)報(bào),2006,4
[5]王志宏.數(shù)據(jù)庫(kù)技術(shù)在網(wǎng)站中的應(yīng)用研究[J].皖西學(xué)院學(xué)報(bào),2003,2
[6]伊斯坎代爾.數(shù)據(jù)庫(kù)在網(wǎng)站中的運(yùn)用[J].烏魯木齊職業(yè)大學(xué)學(xué)報(bào),2003,3
對(duì)于嵌入式數(shù)據(jù)庫(kù)系統(tǒng)是利用計(jì)算機(jī)的技術(shù),并且是可以根據(jù)軟硬件的不同要求進(jìn)行指定應(yīng)用,這樣可以滿足系統(tǒng)在應(yīng)用時(shí)對(duì)功能和可靠性的要求。在嵌入式系統(tǒng)運(yùn)行時(shí),其都是隱藏于內(nèi)部的設(shè)備中,不是通過(guò)計(jì)算機(jī)的形式顯示出來(lái)。如果在系統(tǒng)中加入了嵌入式的數(shù)據(jù)庫(kù)系統(tǒng),一般會(huì)認(rèn)為是智能的系統(tǒng)。在嵌入式數(shù)據(jù)庫(kù)系統(tǒng)中必須融入計(jì)算機(jī)技術(shù)、電子技術(shù)和新興的半導(dǎo)體技術(shù),這些技術(shù)完美的結(jié)合才能成就嵌入式數(shù)據(jù)庫(kù)系統(tǒng)正常可靠的運(yùn)行。因此,嵌入式數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)要求有技術(shù)支持,并且資金足夠,在知識(shí)系統(tǒng)的創(chuàng)造上也必須合理的系統(tǒng)。在對(duì)嵌入式數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行結(jié)構(gòu)分類(lèi)時(shí),其主要是分為嵌入式的處理器和的一些構(gòu)件。在數(shù)據(jù)發(fā)展的歷史上分析,一般計(jì)算機(jī)技術(shù)的發(fā)展會(huì)促進(jìn)數(shù)據(jù)庫(kù)的發(fā)展,同樣反過(guò)來(lái)也一樣。這兩項(xiàng)技術(shù)在歷史的發(fā)展中都是相互促進(jìn)并且相互影響的。在嵌入式數(shù)據(jù)庫(kù)系統(tǒng)中一個(gè)主要的用途就是移動(dòng)數(shù)據(jù)的處理。移動(dòng)數(shù)據(jù)技術(shù)可以實(shí)現(xiàn)不受時(shí)間以及地點(diǎn)的限制,進(jìn)行數(shù)據(jù)的交流。現(xiàn)在技術(shù)在不斷地提升,在無(wú)線通信的網(wǎng)絡(luò)服務(wù)和各種形式的移動(dòng)的設(shè)備,這些都是要建立在嵌入式數(shù)據(jù)庫(kù)系統(tǒng)之上的。雖然,嵌入式數(shù)據(jù)庫(kù)比較復(fù)雜,但是其用途很廣泛。
2對(duì)嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的研究
2.1嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的含義
為了滿足嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的各種功能及標(biāo)準(zhǔn)上的要求,一般分為嵌入式的數(shù)據(jù)庫(kù)、PC主數(shù)據(jù)源和同步模塊這幾個(gè)部分,在這些構(gòu)成部分之中,微型化的嵌入式的數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)具有最高技術(shù)性和應(yīng)用性以及容易攜帶的特點(diǎn),這就是嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的一般含義。這三個(gè)構(gòu)成部分,其中微型化嵌入式數(shù)據(jù)庫(kù)有數(shù)據(jù)的容量比較小,其可靠程度比較低的缺點(diǎn),但是這點(diǎn)在PC主數(shù)據(jù)源中會(huì)有彌補(bǔ),因?yàn)镻C主數(shù)據(jù)源只能用于PC機(jī)中,這樣就不能按照意愿進(jìn)行移動(dòng)。在這些構(gòu)件的中間部分是同步模塊,這個(gè)部分可以進(jìn)行數(shù)據(jù)的雙方向的交換,將數(shù)據(jù)在嵌入式數(shù)據(jù)庫(kù)和主數(shù)據(jù)源之間進(jìn)行傳遞,保證信息傳遞的及時(shí)性和一致性。因此,我們可以把同步模塊作為信息交流的橋梁。只有嵌入式數(shù)據(jù)庫(kù)設(shè)計(jì)中三個(gè)部分合理的結(jié)合應(yīng)用,才可以互相補(bǔ)差補(bǔ)漏,既可以有嵌入式數(shù)據(jù)庫(kù)的便于攜帶的優(yōu)勢(shì),又可以獲得大量的數(shù)據(jù),這樣對(duì)于想要隨時(shí)獲得大量信息的用戶(hù)來(lái)說(shuō),就得到了滿足。通過(guò)三種部件互相結(jié)合的方式,就是嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的主要方式。
2.2嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的特點(diǎn)
在傳統(tǒng)的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)體系的設(shè)計(jì)中,一般采用固定的網(wǎng)絡(luò)連接對(duì)不同的計(jì)算結(jié)點(diǎn)之間連接,這樣可以保證網(wǎng)絡(luò)能夠連續(xù)的連接。但是隨著移動(dòng)數(shù)據(jù)技術(shù)的發(fā)展,它要求固定的節(jié)點(diǎn)和移動(dòng)的結(jié)點(diǎn)相結(jié)合,那么以前傳統(tǒng)的網(wǎng)絡(luò)連接就不能夠滿足條件。對(duì)于移動(dòng)數(shù)據(jù)庫(kù),其要求的性能比較高,所以要求有嵌入式數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì),這種設(shè)計(jì)是建立在傳統(tǒng)分布式的數(shù)據(jù)庫(kù)的建設(shè)上進(jìn)行拓展而來(lái)的。現(xiàn)在的移動(dòng)數(shù)據(jù)庫(kù)是把固定的服務(wù)器節(jié)點(diǎn)和客戶(hù)端進(jìn)行連接以獲取動(dòng)態(tài)的數(shù)據(jù),因此可以將移動(dòng)計(jì)算機(jī)環(huán)境中的數(shù)據(jù)庫(kù)管理系統(tǒng)看作是動(dòng)態(tài)式的數(shù)據(jù)庫(kù)管理系統(tǒng)。從根本上來(lái)說(shuō),傳統(tǒng)的數(shù)據(jù)庫(kù)的設(shè)計(jì)和嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)有著很多不同點(diǎn),如果在移動(dòng)的計(jì)算機(jī)環(huán)境下進(jìn)行移動(dòng)數(shù)據(jù)的應(yīng)用就是嵌入式的數(shù)據(jù)庫(kù)系統(tǒng),這種可移動(dòng)的特點(diǎn)優(yōu)于傳統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)。嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)主要特點(diǎn)是包括有對(duì)標(biāo)準(zhǔn)的SQL進(jìn)行技術(shù)支持,對(duì)事務(wù)的管理功能和完備的數(shù)據(jù)庫(kù)管理功能,可以供多種嵌入型操作系統(tǒng)的應(yīng)用。
3嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的技術(shù)和應(yīng)用前景
3.1嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的主要技術(shù)
嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)其中一項(xiàng)主要技術(shù)就是數(shù)據(jù)的復(fù)制和緩存的功能。通過(guò)這項(xiàng)技術(shù)可以將需要維護(hù)和備份的數(shù)據(jù)在不同的多個(gè)移動(dòng)的網(wǎng)絡(luò)節(jié)點(diǎn)之間進(jìn)行復(fù)制備存。在嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)中的這項(xiàng)功能主要是進(jìn)行服務(wù)器之間的復(fù)制數(shù)據(jù)和移動(dòng)的計(jì)算機(jī)數(shù)據(jù)信息之間的復(fù)制和保存。從嚴(yán)格意義上來(lái)說(shuō),只有服務(wù)器之間進(jìn)行的復(fù)制才能被稱(chēng)為數(shù)據(jù)的復(fù)制,而計(jì)算機(jī)上所保存的數(shù)據(jù)進(jìn)行復(fù)制就是屬于數(shù)據(jù)的緩存。復(fù)制可以提升分布式的數(shù)據(jù)庫(kù)的可靠程度和訪問(wèn)的性能,但是必須保證多個(gè)復(fù)制節(jié)點(diǎn)在數(shù)據(jù)上的一致性。根據(jù)維護(hù)復(fù)制的功能上所采取的技術(shù)方法的不同,就可以將復(fù)制功能分為嚴(yán)格一致性和弱一致性。在嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的復(fù)制和緩存技術(shù)中,如果要求嚴(yán)格的一致性就要保證在無(wú)論何時(shí)復(fù)制的數(shù)據(jù)信息其內(nèi)容都是一致的,但是對(duì)一致性的要求比較弱,那么可以允許在較短的時(shí)間內(nèi)有不相同的現(xiàn)象的出現(xiàn)。但是我們要求其不同的數(shù)據(jù)不能太多,必須控制在一定的范圍之內(nèi),并且最終隨著時(shí)間的演變是能夠趨向相同的。對(duì)于嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的另一個(gè)技術(shù)就是數(shù)據(jù)廣播。這項(xiàng)技術(shù)是應(yīng)用于移動(dòng)的計(jì)算環(huán)境之下,關(guān)于客戶(hù)的機(jī)器和總的服務(wù)器雙方是不對(duì)稱(chēng)的,正好應(yīng)用了這一點(diǎn),就可以用類(lèi)似于周期式的形式來(lái)傳遞數(shù)據(jù)和信息。通過(guò)數(shù)據(jù)廣播技術(shù)可以幫助處理數(shù)據(jù)庫(kù)系統(tǒng)的斷接問(wèn)題,并且不會(huì)因?yàn)橛脩?hù)的數(shù)量的變化而發(fā)生變化。對(duì)于數(shù)據(jù)廣播技術(shù)的構(gòu)造中一個(gè)方面是服務(wù)器,這個(gè)層面是用來(lái)進(jìn)行組織廣播和調(diào)節(jié)數(shù)據(jù),可以對(duì)廣播數(shù)據(jù)進(jìn)行本地緩存。因此,復(fù)制緩存技術(shù)和數(shù)據(jù)廣播都是嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的主要技術(shù)。
3.2嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的應(yīng)用前景
隨著物流業(yè)的逐漸發(fā)展壯大,嵌入式移動(dòng)數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)也可以應(yīng)用在物流方面。采用嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì),可以對(duì)物流的信息進(jìn)行準(zhǔn)確的跟蹤,對(duì)生產(chǎn)、銷(xiāo)售和運(yùn)輸過(guò)程中的資金進(jìn)行合理的安排。在物流的運(yùn)輸工作中,可以利用嵌入式數(shù)據(jù)庫(kù)系統(tǒng)技術(shù)將車(chē)輛信息中移動(dòng)的數(shù)據(jù)信息進(jìn)行傳遞,從而保證物流車(chē)輛在運(yùn)輸過(guò)程中的一切行蹤都在總系統(tǒng)的控制范圍內(nèi)。通過(guò)嵌入式數(shù)據(jù)庫(kù)設(shè)計(jì)可以將手寫(xiě)的信息用無(wú)線的網(wǎng)絡(luò)傳入中央的數(shù)據(jù)庫(kù)來(lái)存儲(chǔ),這樣有利于物流信息的更新和保存。同時(shí),嵌入式移動(dòng)數(shù)據(jù)的技術(shù)也可以應(yīng)用于移動(dòng)的銀行。目前,我國(guó)的移動(dòng)用戶(hù)的群體在逐漸的擴(kuò)大,所以銀行移動(dòng)化也是大勢(shì)所趨。嵌入式數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)在移動(dòng)銀行上進(jìn)行應(yīng)用,可以幫助用戶(hù)進(jìn)行實(shí)時(shí)的賬務(wù)查詢(xún)和交易,增加了靈活性。移動(dòng)銀行的用戶(hù)可以不受時(shí)間和地點(diǎn)的限制,來(lái)辦理銀行業(yè)務(wù),從而也節(jié)省了大量的時(shí)間。在水電業(yè)中,對(duì)于數(shù)據(jù)傳統(tǒng)上的采集方法是進(jìn)行家家戶(hù)戶(hù)的抄錄數(shù)據(jù),現(xiàn)在則可以利用嵌入式數(shù)據(jù)庫(kù)技術(shù)進(jìn)行移動(dòng)的傳輸數(shù)據(jù),從而提高了工作效率。
4結(jié)束語(yǔ)
關(guān)鍵詞:網(wǎng)站;數(shù)據(jù)庫(kù)設(shè)計(jì);開(kāi)發(fā)
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 19-0000-02
數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞將直接對(duì)系統(tǒng)的效率以及實(shí)現(xiàn)的效率產(chǎn)生影響,好的數(shù)據(jù)庫(kù)設(shè)計(jì)對(duì)網(wǎng)站的發(fā)展具有決定性的作用。下面主要對(duì)網(wǎng)站管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)進(jìn)行分析。
1 數(shù)據(jù)庫(kù)設(shè)計(jì)需求分析及建設(shè)流程
隨著網(wǎng)絡(luò)的不斷發(fā)展,人們?cè)絹?lái)越多的通過(guò)網(wǎng)絡(luò)來(lái)了解所需的信息,網(wǎng)絡(luò)化一方面加強(qiáng)了各方面的聯(lián)系,通過(guò)網(wǎng)站全面宣傳企業(yè)等;另一方面,銷(xiāo)售網(wǎng)站的也在近幾年來(lái)迅速發(fā)展,成為了近幾年來(lái)新增網(wǎng)站的主力,網(wǎng)絡(luò)銷(xiāo)售也越來(lái)越受到人們的歡迎;另外還有工作性質(zhì)的網(wǎng)站。從目的上看主要是宣傳,銷(xiāo)售,政務(wù)工作等。
需求分析通常是和系統(tǒng)調(diào)查結(jié)合在一起,通過(guò)調(diào)查收集資料,然后進(jìn)行分析。系統(tǒng)調(diào)查的基本方法有:(1)收集企業(yè)資料。如企業(yè)組織機(jī)構(gòu)、管理模式、部門(mén)職責(zé)與業(yè)務(wù)流程、業(yè)務(wù)規(guī)劃、各種報(bào)表和單證等。(2)個(gè)別訪談。主要針對(duì)企業(yè)特定人員,如高層主管、業(yè)務(wù)骨干等,目的是了解信息系統(tǒng)開(kāi)發(fā)背景、目標(biāo),企業(yè)發(fā)展及對(duì)信息系統(tǒng)的要求等涉及系統(tǒng)全局性的信息。(3)填寫(xiě)調(diào)查表。對(duì)所有參與信息系統(tǒng)處理和未來(lái)系統(tǒng)的使用者,調(diào)查他們當(dāng)前對(duì)信息處理和使用的方法以及對(duì)未來(lái)系統(tǒng)的要求等信息。(4)跟班參與和觀察。對(duì)于一些關(guān)鍵環(huán)節(jié)、或無(wú)法了解清楚的處理環(huán)節(jié)和管理崗位,系統(tǒng)開(kāi)發(fā)人員通過(guò)跟班體驗(yàn)、親自參與和觀察,來(lái)準(zhǔn)確了解所需要的信息。(5)開(kāi)調(diào)查會(huì):舉行由開(kāi)發(fā)人員、部門(mén)經(jīng)理和業(yè)務(wù)管理人員代表等參加的會(huì)議,了解當(dāng)前的信息處理模式和信息需求。
必須準(zhǔn)確了解并清晰表達(dá)系統(tǒng)開(kāi)發(fā)所需的全部信息。不可能通過(guò)一次調(diào)查就把所有需求弄清楚,需要綜合使用各種方法進(jìn)行多次調(diào)查。但無(wú)論采用何種方法,調(diào)查前都要認(rèn)真準(zhǔn)備,事先有調(diào)查提綱或設(shè)計(jì)調(diào)查表,調(diào)查后仔細(xì)分析調(diào)查結(jié)果,撰寫(xiě)調(diào)查報(bào)告。系統(tǒng)調(diào)查是一個(gè)和信息系統(tǒng)未來(lái)用戶(hù)溝通的過(guò)程,涉及不同部門(mén)、不同層次的業(yè)務(wù)人員和管理者。調(diào)查者需要具備良好的與他人特別是非專(zhuān)業(yè)人員溝通的能力。對(duì)系統(tǒng)調(diào)查獲得的各種資料信息,可以編制詳細(xì)的匯總清單,并和用戶(hù)一道對(duì)信息的準(zhǔn)確性和完整性進(jìn)行審核。
其具體的建設(shè)流程是:
(1)程序及數(shù)據(jù)庫(kù)開(kāi)發(fā):建立高質(zhì)量的電子商務(wù)網(wǎng)站需要對(duì)網(wǎng)站建設(shè)、用戶(hù)需求、數(shù)據(jù)庫(kù)設(shè)計(jì)進(jìn)行深入細(xì)致的分析。
(2)數(shù)據(jù)庫(kù)開(kāi)發(fā)步驟:需求分析系統(tǒng)功能模塊設(shè)計(jì)程序編輯應(yīng)用開(kāi)發(fā)測(cè)試驗(yàn)收交付客戶(hù)
(3)數(shù)據(jù)庫(kù)開(kāi)發(fā)工具:
數(shù)據(jù)庫(kù) SQL SERVER、MY SQL、ORACLE。
操作系統(tǒng) WIN NT、Linux。
開(kāi)發(fā)語(yǔ)言JAVA、ASP、PHP、JSP。
(4)維護(hù)功能:為了保證網(wǎng)站正常工作,網(wǎng)站維護(hù)是必要的。但是遠(yuǎn)水救不了近火,誰(shuí)也不能保證網(wǎng)站在故障的時(shí)候網(wǎng)站維護(hù)人員能夠及時(shí)維護(hù),這就要求在設(shè)計(jì)的時(shí)候要增加自主維護(hù)功能。有了軟件維護(hù)功能,哪怕是簡(jiǎn)單的備份功能,也能夠在突發(fā)事件中將數(shù)據(jù)損失降到最低點(diǎn)。
2 數(shù)據(jù)庫(kù)設(shè)計(jì)的原則
在數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)設(shè)計(jì)的時(shí)候應(yīng)該盡量考慮全面,尤其應(yīng)該考慮用戶(hù)的各種需求,避免浪費(fèi)不必要的人力、物力和財(cái)力。表是包含數(shù)據(jù)庫(kù)中所有數(shù)據(jù)的數(shù)據(jù)庫(kù)對(duì)象。表定義為列的集合,每行代表唯一的一條記錄,每列代表記錄中的一個(gè)域。表存儲(chǔ)在數(shù)據(jù)庫(kù)文件中,有相應(yīng)權(quán)限的用戶(hù)都可以對(duì)其進(jìn)行操作。表和列的命名要遵循標(biāo)識(shí)符的規(guī)定,必須為每列指定數(shù)據(jù)類(lèi)型,列的數(shù)據(jù)類(lèi)型決定了數(shù)據(jù)的取值范圍和存儲(chǔ)格式。
3 具體案例
下面以一種銷(xiāo)售網(wǎng)站為例進(jìn)行分析,某手機(jī)銷(xiāo)售網(wǎng)站的具體需求信息如下:
3.1 功能需求分析
(1)前臺(tái)商店功能
此功能是用于客戶(hù)瀏覽界面,及對(duì)購(gòu)物的流程顯示
商品分類(lèi)檢索。商品的類(lèi)別由店主自行在網(wǎng)店管理系統(tǒng)中設(shè)定。支持商品分類(lèi)檢索。
首頁(yè)推薦商品和特價(jià)商品、排行榜商品。管理員可在商城管理系統(tǒng)中設(shè)定一些重要的商品,作為首頁(yè)推薦商品。這些商品直接在首頁(yè)出現(xiàn)。同樣,也可以設(shè)定部分商品為首頁(yè)推薦的特價(jià)商品及首頁(yè)排行榜商品。
購(gòu)物車(chē):購(gòu)物車(chē)功能主要是指的用戶(hù)選中商品之后,點(diǎn)擊“購(gòu)買(mǎi)”按鈕,商品會(huì)自動(dòng)到購(gòu)物車(chē)?yán)铮矣脩?hù)購(gòu)買(mǎi)的數(shù)量也可以自主的調(diào)節(jié)。
訂單生成:用戶(hù)確認(rèn)購(gòu)買(mǎi)購(gòu)物車(chē)內(nèi)的商品之后,點(diǎn)擊“訂單確認(rèn)”就進(jìn)入了訂單詳情的頁(yè)面,此頁(yè)面會(huì)讓用戶(hù)確定商品的同時(shí),選擇快遞方式和交易方式等。
訂單查詢(xún):網(wǎng)站會(huì)員可以通過(guò)查詢(xún)功能,隨時(shí)查詢(xún)商品信息,也可以查詢(xún)購(gòu)買(mǎi)后的商品情況,例如快遞情況等。另外用戶(hù)也可以查詢(xún)到購(gòu)買(mǎi)歷史。
輔助功能:包括會(huì)員資料修改,密碼修改,用戶(hù)缺貨登記,缺貨登記處理,發(fā)貨或缺貨通知等等。
商品評(píng)論:用戶(hù)對(duì)網(wǎng)站或者某一件商品進(jìn)行評(píng)論或者評(píng)價(jià),網(wǎng)站管理員對(duì)用戶(hù)的評(píng)論可以進(jìn)行管理操作。
(2)后臺(tái)商城管理功能
管理員管理:后臺(tái)管理商品和處理訂單,幫助用戶(hù)修改密碼,群發(fā)郵件等。
商品類(lèi)別管理:添加,刪除,修改商品分類(lèi)。
分類(lèi)商品管理:在不同的類(lèi)別下管理商品,包括商品上傳,修改和刪除等功能。商品資料包括:商品名稱(chēng),品牌,產(chǎn)地(生產(chǎn)商),市場(chǎng)價(jià),優(yōu)惠價(jià),商品詳細(xì)介紹等
會(huì)員管理:修改、刪除會(huì)員資料等,查看會(huì)員訂單信息、會(huì)員訪問(wèn)信息。
處理訂單:付款確認(rèn)、商品出貨、訂單查詢(xún),可以根據(jù)需要設(shè)定員工權(quán)限處理相關(guān)項(xiàng):如送貨員只具有商品出貨權(quán)限、財(cái)務(wù)只具有付款確認(rèn)權(quán)限。
進(jìn)銷(xiāo)存功能:進(jìn)貨開(kāi)進(jìn)貨單,其它費(fèi)用支出開(kāi)支出單。查看每日、每月、每年?duì)I業(yè)統(tǒng)計(jì)。查詢(xún)商品庫(kù)存數(shù)量。
配送方式、付款方式:配送方式支持運(yùn)費(fèi)可以分為買(mǎi)家支付以及賣(mài)家承擔(dān),買(mǎi)家支付時(shí)可以有平郵,快遞之分,平郵快遞單位價(jià)格由發(fā)貨地價(jià)格決定。付款方式具有很強(qiáng)的擴(kuò)展性,集成了西部在線支付功能。支持網(wǎng)銀在線支付(根據(jù)情況需要修改)
3.2 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)
設(shè)計(jì)好數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)之后,就可以開(kāi)始設(shè)計(jì)滿足用戶(hù)需求的各種實(shí)體,以及他們之間的各種關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計(jì)做準(zhǔn)備。這些實(shí)體包含各種具體的信息,通過(guò)相互作用來(lái)形成數(shù)據(jù)的流動(dòng)。數(shù)據(jù)庫(kù)設(shè)計(jì)是指對(duì)一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫(kù)模式,建立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng),有效存儲(chǔ)數(shù)據(jù),滿足用戶(hù)要求和處理要求。數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率及實(shí)現(xiàn)效果產(chǎn)生影響。
設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng)時(shí)首先充分了解各個(gè)方面的需求,包括現(xiàn)有的及將來(lái)可能增加的需求。由于本系統(tǒng)面向的對(duì)象有3個(gè),即普通用戶(hù),會(huì)員和管理員,所以在數(shù)據(jù)庫(kù)需求分析中就要考慮三方面因素。
3.3 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)
數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)結(jié)束后,就可以將上面的數(shù)據(jù)庫(kù)概念結(jié)構(gòu)轉(zhuǎn)換為ACCESS所支持的實(shí)際數(shù)據(jù)模型,即數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)。
參考文獻(xiàn):
[1]劉海寧,王經(jīng)雨.網(wǎng)站管理的幾種形式及應(yīng)用實(shí)踐[J].首都醫(yī)科大學(xué)學(xué)報(bào)(社科版),2008.
[2]任雪蓮.B2C電子商務(wù)網(wǎng)站的設(shè)計(jì)與構(gòu)建[J].商場(chǎng)現(xiàn)代化,2009,20.