国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

關(guān)系型數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)的原則、方法與意義探析

2024-09-03 00:00:00陳小芳
電腦知識與技術(shù) 2024年19期

摘要:文章從數(shù)據(jù)庫系統(tǒng)的邏輯結(jié)構(gòu)設(shè)計(jì)的重要性切題,以關(guān)系型數(shù)據(jù)庫為例,闡明邏輯結(jié)構(gòu)設(shè)計(jì)原則與方法,用實(shí)例回答了良好的邏輯結(jié)構(gòu)設(shè)計(jì)所帶來的好處,最后進(jìn)行總結(jié),指出基本概念是關(guān)鍵,邏輯結(jié)構(gòu)中的表盡量符合第三范式,表與表之間的聯(lián)系通過外鍵來表達(dá)。同時也要兼顧表的規(guī)范化及數(shù)據(jù)庫的性能,保證數(shù)據(jù)庫系統(tǒng)的穩(wěn)定性、高可用。

關(guān)鍵詞:邏輯結(jié)構(gòu)設(shè)計(jì);函數(shù)依賴;關(guān)系規(guī)范化

中圖分類號:TP3 文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2024)19-0084-03

數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)的步驟主要包括需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)以及數(shù)據(jù)庫的實(shí)施和維護(hù)。邏輯結(jié)構(gòu)設(shè)計(jì)是關(guān)鍵環(huán)節(jié)之一,這個環(huán)節(jié)做好做實(shí)了,數(shù)據(jù)庫系統(tǒng)的穩(wěn)定性、安全性、完整性和高性能才有基礎(chǔ)。

1 數(shù)據(jù)庫系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)的重要性

數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)的根本目的是滿足用戶收集、存儲、操作和管理數(shù)據(jù)的需要。數(shù)據(jù)庫系統(tǒng)的三個模式兩級映像保證了數(shù)據(jù)庫外模式的穩(wěn)定性,既保證了數(shù)據(jù)的邏輯獨(dú)立性;也從底層保證了應(yīng)用程序的穩(wěn)定性,還保證了數(shù)據(jù)的物理獨(dú)立性。除非應(yīng)用需求本身發(fā)生變化,否則應(yīng)用程序一般不需要修改。

在數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)中,數(shù)據(jù)庫邏輯模式是數(shù)據(jù)庫的中心與關(guān)鍵,它獨(dú)立于數(shù)據(jù)庫的其他層次,因此設(shè)計(jì)數(shù)據(jù)庫模式結(jié)構(gòu)時應(yīng)首先確定數(shù)據(jù)庫的邏輯模式,進(jìn)行邏輯結(jié)構(gòu)設(shè)計(jì)。良好的數(shù)據(jù)庫系統(tǒng)的邏輯結(jié)構(gòu)設(shè)計(jì),可以節(jié)省數(shù)據(jù)的存儲空間,能夠保證數(shù)據(jù)的完整性,方便進(jìn)行數(shù)據(jù)庫系統(tǒng)的開發(fā)。反之,會導(dǎo)致數(shù)據(jù)冗余、存儲空間浪費(fèi),數(shù)據(jù)更新、刪除和插入的異常。

2 數(shù)據(jù)庫系統(tǒng)的邏輯結(jié)構(gòu)設(shè)計(jì)的原則

數(shù)據(jù)庫常見的數(shù)據(jù)模型有層次模型、網(wǎng)狀模型、關(guān)系模型、對象-關(guān)系模型等,關(guān)系模型是目前最重要的一種數(shù)據(jù)模型,關(guān)系數(shù)據(jù)庫就是采用關(guān)系模型作為數(shù)據(jù)的組織方式。關(guān)系模型源于數(shù)學(xué),它把數(shù)據(jù)看成是二維表中的元素,而這個二維表在關(guān)系數(shù)據(jù)庫中就稱為關(guān)系。在關(guān)系數(shù)據(jù)庫中,記錄值僅構(gòu)成關(guān)系,關(guān)系之間的聯(lián)系是靠語義相同的字段(稱為連接字段)值表達(dá)的[1]。理解關(guān)系和連接字段(即列)的思想在關(guān)系數(shù)據(jù)庫中是非常重要的。本文討論數(shù)據(jù)庫系統(tǒng)的邏輯結(jié)構(gòu)設(shè)計(jì)就是以關(guān)系模型為例。

2.1 表設(shè)計(jì)原則

在關(guān)系型數(shù)據(jù)庫系統(tǒng)中的邏輯結(jié)構(gòu)設(shè)計(jì)體現(xiàn)在二維表結(jié)構(gòu)的設(shè)計(jì),在設(shè)計(jì)時盡可能遵守第三范式標(biāo)準(zhǔn)的表設(shè)計(jì)原則,一個主題對應(yīng)一張表,即一個表中只包含其本身的基本屬性。

之所以要盡可能遵守第三范式標(biāo)準(zhǔn)的表設(shè)計(jì)原則,是因?yàn)榈谝环妒?、第二范式都有可能存在?shù)據(jù)冗余,如果存在數(shù)據(jù)冗余,就有可能引起操作異常,包括插入異常、刪除異常、更新異常。為了避免數(shù)據(jù)操作異常,我們一般把數(shù)據(jù)庫設(shè)計(jì)到第三范式,也就是說我們在一張表中不允許存在部分函數(shù)依賴和傳遞函數(shù)依賴:從第一范式規(guī)范到第二范式時消除了部分函數(shù)依賴;從第二范式規(guī)范到第三范式時消除了傳遞函數(shù)依賴,在規(guī)范化的過程中逐步消除了“不良”的函數(shù)依賴[2]。

表的規(guī)范化可以保證表內(nèi)的字段都是最基本的要素,同時規(guī)范化這一措施也有助于消除數(shù)據(jù)中的數(shù)據(jù)冗余。規(guī)范化有好幾種形式:1NF、2NF、3NF、BCNF、4NF、5NF等。但3NF通常被認(rèn)為在性能、擴(kuò)展性和數(shù)據(jù)完整性方面達(dá)到了最佳平衡。而BCNF、4NF、5NF更多是作為數(shù)據(jù)理論研究。簡單來說,滿足3NF的表,有如下3個特點(diǎn),表內(nèi)的每一個值都只能被表達(dá)一次;表內(nèi)的每一行都能被區(qū)分;每一個表都不包含其他表已經(jīng)包含的非主關(guān)鍵字信息。

2.2 字段設(shè)計(jì)原則

在進(jìn)行數(shù)據(jù)庫系統(tǒng)邏輯設(shè)計(jì)中,表中的字段設(shè)計(jì)在長度上要盡量充足,同時考慮未來發(fā)展。比如企業(yè)目前職工人數(shù)是數(shù)百人,則職工編號為3位數(shù)字,但考慮到今后企業(yè)有可能壯大到數(shù)千人,則可將職工編號設(shè)置為4位數(shù)字,這樣盡量滿足一段時間內(nèi)企業(yè)發(fā)展的需求。給字段留足余量,將來無須重構(gòu)整個數(shù)據(jù)庫就可以實(shí)現(xiàn)數(shù)據(jù)庫規(guī)模的增長了,增強(qiáng)了系統(tǒng)的靈活性[3]。

在進(jìn)行數(shù)據(jù)庫系統(tǒng)邏輯設(shè)計(jì)中,還要考慮表字段的命名規(guī)范。字段的名稱要易于理解,便于閱讀,要有意義,不宜太長,要保證數(shù)據(jù)庫表中字段名沒有和保留字或者常用訪問方法沖突,否則在程序連接時會出錯,在用SELECT語句查詢時,會得到一大堆無用處的信息。還要注意的是:在命名字段并為其指定數(shù)據(jù)類型的時候,一定要在各個表中保證一致性;字段名都采用加上前綴的方式,如加上所屬表縮寫名的前綴,那么在編寫SQL表達(dá)式的時候會得到大大的簡化;對地址采用多個字段,可以提供更大的靈活性;有時在表中創(chuàng)建一個計(jì)算列(如成績總分),通過它可以自動地連接標(biāo)準(zhǔn)化的字段,這樣數(shù)據(jù)變動的時候,計(jì)算列也跟著變動,實(shí)現(xiàn)數(shù)據(jù)的自動更新。

進(jìn)行數(shù)據(jù)庫邏輯設(shè)計(jì)時,還要有一種服務(wù)意識、大局意識,因?yàn)閿?shù)據(jù)庫邏輯設(shè)計(jì)只是一個小小的環(huán)節(jié),還有數(shù)據(jù)庫管理員、應(yīng)用程序開發(fā)員等,最終用戶要使用數(shù)據(jù)庫系統(tǒng),所以要考慮周全。

2.3 謹(jǐn)慎使用觸發(fā)器

觸發(fā)器在保證數(shù)據(jù)完整性及商業(yè)規(guī)則方面有積極作用,比如我們要限制不能將學(xué)生成績由不及格改成及格這樣復(fù)雜的業(yè)務(wù)規(guī)則,我們則用觸發(fā)器來實(shí)現(xiàn)。

但不當(dāng)?shù)厥褂糜|發(fā)器時,它會帶來效率方面的問題。比如,我們用觸發(fā)器來限制學(xué)生的考試成績在0~150分。我們知道觸發(fā)器有兩種類型,一種是前觸發(fā)型,另一種是后觸發(fā)型。假設(shè)先使用了一個后觸發(fā)型觸發(fā)器來實(shí)現(xiàn),那這個處理流程是這樣的:先完成數(shù)據(jù)的插入,再執(zhí)行觸發(fā)器。在觸發(fā)器中判斷新插入的數(shù)據(jù)是否不在0~150分,如果不在,要作一個回滾roll?back的操作,把剛插入的數(shù)據(jù)撤銷。如果使用的是前觸發(fā)型觸發(fā)器,同樣假設(shè)是在一個插入操作上定義觸發(fā)器。執(zhí)行插入操作時,系統(tǒng)它本身并不實(shí)際執(zhí)行插入操作,而是去執(zhí)行觸發(fā)器的代碼。當(dāng)我們在觸發(fā)器當(dāng)中發(fā)現(xiàn)新插入的成績滿足在0~150分時,再在觸發(fā)器當(dāng)中寫一個重新插入這樣一條語句。

不管是后觸發(fā)型的觸發(fā)器作一個回滾rollback操作,還是前觸發(fā)型的觸發(fā)器再重新寫一遍插入操作,這些都比直接做插入操作多了一些額外的工作。因此不當(dāng)使用觸發(fā)器會降低數(shù)據(jù)的操作效率。觸發(fā)器的功能通??梢杂闷渌绞綄?shí)現(xiàn),如果我們定的是一個check約束,情況就不一樣了,數(shù)據(jù)庫管理系統(tǒng)首先會檢查我們的數(shù)據(jù)是否滿足我們的check約束的要求。如果不滿足,這個操作是不會執(zhí)行的,這樣顯然比我們用觸發(fā)器的效率高很多。所以我們能夠用check約束或唯一值約束等完整性約束來實(shí)現(xiàn)這些約束,都不要使用觸發(fā)器來實(shí)現(xiàn),只有他們實(shí)現(xiàn)不了的復(fù)雜約束和企業(yè)規(guī)則,才使用觸發(fā)器。

2.4 恰當(dāng)使用視圖

視圖主要是為了在數(shù)據(jù)庫和應(yīng)用程序代碼之間提供另一層抽象。我們知道數(shù)據(jù)庫系統(tǒng)是三級模式兩級映像的結(jié)構(gòu)。三層模式是內(nèi)模式、概念模式、外模式,視圖就對應(yīng)到外模式。外模式是針對每一類用戶對信息的需求來設(shè)計(jì)的,因此我們在設(shè)計(jì)外模式的時候,實(shí)際上是可以滿足每一類用戶的信息需求的。

在定義視圖時,實(shí)際上它可以實(shí)現(xiàn)包含復(fù)雜查詢的語句。用戶需要查詢這些數(shù)據(jù),如果我們定義好了視圖,在客戶端用戶中需要對這個視圖進(jìn)行訪問就可以,不需要去編寫復(fù)雜的查詢語句。當(dāng)然了我們通過視圖,通過外模式訪問數(shù)據(jù),它最終都會轉(zhuǎn)換到內(nèi)模式,對基本表的訪問。因此通過視圖訪問數(shù)據(jù)效率會有一些降低,但可以簡化客戶端的編程,可以封裝復(fù)雜的查詢,可以恰當(dāng)?shù)厝ナ褂靡晥D。

2.5 編寫設(shè)計(jì)文檔

對所有的設(shè)計(jì)都要編寫相應(yīng)文檔,每一個設(shè)計(jì)階段都要產(chǎn)生一些文檔,便于后期維護(hù)和經(jīng)驗(yàn)總結(jié)。

3 數(shù)據(jù)庫系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)的方法

3.1 數(shù)據(jù)冗余帶來的操作異常

數(shù)據(jù)庫設(shè)計(jì)是數(shù)據(jù)庫應(yīng)用領(lǐng)域中的重要研究課題,其主要任務(wù)是創(chuàng)建滿足用戶需求且性能良好的數(shù)據(jù)庫模式。對于關(guān)系型數(shù)據(jù)庫設(shè)計(jì)確切地講其主要任務(wù)就是關(guān)系數(shù)據(jù)庫的邏輯設(shè)計(jì)問題:如何為數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計(jì)合適的關(guān)系模式,應(yīng)設(shè)計(jì)幾個關(guān)系模式,每個關(guān)系模式由哪些屬性組成等等。

某電子有限責(zé)任公司需要開發(fā)一個員工信息管理系統(tǒng),現(xiàn)設(shè)計(jì)了一張員工信息表,表中有5項(xiàng)屬性(工號、工作車間、宿舍樓、零件號、工分),前提假設(shè)同一工作車間的員工住在同一棟宿舍樓里,一位員工可以加工不同的零件來取得工分。這個表的主鍵是(工號、零件號)?,F(xiàn)有如下數(shù)據(jù),見表1最初的員工信息表。

我們來分析一下這個表的數(shù)據(jù),看看可有數(shù)據(jù)冗余的情況,如有,在數(shù)據(jù)冗余的情況下,會出現(xiàn)哪些操作異常。

從行的角度來看,前面4 行數(shù)據(jù)實(shí)際上是描述QC1910001這位員工的。之所以出現(xiàn)了4次,是因?yàn)樗竺孢x的加工零件有4種。從列的角度來看,前兩列描述的是這位員工在哪個車間工作這個主題,第二列與第三列描述的是這個車間的員工住在哪棟宿舍樓這個主題。這兩個主題由于與后面所選的加工零件合在一張表進(jìn)行描述,所以被重復(fù)描述了多遍,有數(shù)據(jù)冗余的情況。

在有數(shù)據(jù)冗余的情況,它帶來的最直觀的問題是造成存儲空間的浪費(fèi)。除了存儲空間的浪費(fèi),還會帶來不好的后果,就是操作異常。

1) 數(shù)據(jù)插入異常

假設(shè)公司的規(guī)模不斷擴(kuò)大,現(xiàn)要新增一個車間:工作車間4,也分配了這個車間的員工住在4號樓。但目前還沒開始招收員工,因此還沒有工號與零件號的數(shù)據(jù),而(工號、零件號)是這張表的主鍵,我們知道要插入一行數(shù)據(jù),主鍵為空是插入不了的。這樣新增的這個車間的信息就插不進(jìn)去了。所以說數(shù)據(jù)冗余有可能造成數(shù)據(jù)插入異常。

2) 數(shù)據(jù)更新異常

假設(shè)公司新蓋了宿舍樓,現(xiàn)要把車間1的員工搬到新蓋的宿舍樓:新1號樓。按常理來說,要更改這樣一個主題,只要更改一次就夠了。但對于我們這個設(shè)計(jì)方法,在這張表中就要更改6次。那由小及大,如果這個車間1的員工是100人,那起碼得更改100次。這就造成了時間的浪費(fèi),效率的低下,出錯的可能。所以說數(shù)據(jù)冗余有可能造成數(shù)據(jù)更新異常。

3) 數(shù)據(jù)刪除異常

假設(shè)有員工只加工一種型號的零件,現(xiàn)公司不再加工這個零件了,要把這行數(shù)據(jù)刪除。那么刪除掉這行信息,同時也就把這位員工的其他基本信息一并刪除了??梢姡鄠€主題合在一起,放在同一張表中進(jìn)行描述的這種設(shè)計(jì)方法,有可能造成數(shù)據(jù)刪除異常。

顯然,好的數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)很重要。不僅避免了空間的浪費(fèi),也避免了數(shù)據(jù)操作異常,還能提高效率,能夠保證數(shù)據(jù)的完整性,方便進(jìn)行數(shù)據(jù)庫系統(tǒng)的開發(fā)[4]。

3.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)的規(guī)范化

進(jìn)行數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì),要遵循關(guān)系規(guī)范化理論,要理解函數(shù)依賴與范式間的內(nèi)在關(guān)系。某電子有限責(zé)任公司這張員工信息表不是一個好的關(guān)系模式,只有通過模式分解,把這個關(guān)系模式分解成更高級別的兩個或是多個關(guān)系模式,在分解的過程中消除那些“不良”的函數(shù)依賴,從而獲得良好的關(guān)系模式。

1) 消除部分函數(shù)依賴,規(guī)范化到第二范式

我們知道,不包含非原子項(xiàng)屬性的關(guān)系是第一范式的關(guān)系。也只有滿足第一范式的表,我們在關(guān)系模式的數(shù)據(jù)庫中才能去存儲。員工信息表(工號、工作車間、宿舍樓、零件號、工分)都是原子項(xiàng)屬性,所以它是第一范式的關(guān)系。

在員工信息表當(dāng)中,(工號、零件號)是主鍵,而工作車間完全函數(shù)依賴于工號,這樣就存在工作車間部分函數(shù)依賴于主鍵。同時存在數(shù)據(jù)冗余,操作異常的情況。因此,我們用分解的方法,把這張表規(guī)范化到第二范式,消除部分函數(shù)依賴。

首先,用組成主鍵的屬性集合的每一個子集,作為主鍵構(gòu)成關(guān)系表。在這,我們得到主鍵的3個子集分別為:工號,零件號,(工號、零件號)。

再者,將依賴于不同主鍵的屬性放置到相應(yīng)的關(guān)系表中。得到3張表:(工號、工作車間、宿舍樓);(工號、零件號、工分);(零件號)。

最后,去掉只由主鍵的子集構(gòu)成的關(guān)系表。

這樣就把員工信息表規(guī)范化到第二范式了,得到兩張表。(工號、工作車間、宿舍樓);(工號、零件號、工分)。

已規(guī)范化到第二范式的關(guān)系表,再看表2的工作車間與宿舍樓這兩列數(shù)據(jù),還是存在數(shù)據(jù)冗余的情況。有數(shù)據(jù)冗余就可能存在數(shù)據(jù)操作異常。因此,繼續(xù)向第三范式進(jìn)行規(guī)范化。

2) 消除傳遞函數(shù)依賴,規(guī)范化到第三范式

在(工號、工作車間、宿舍樓)這張第二范式的關(guān)系表中,工作車間完全函數(shù)依賴于工號,宿舍樓又完全函數(shù)依賴于工作車間,因此,宿舍樓傳遞函數(shù)依賴于工號,并且有數(shù)據(jù)冗余的情況。繼續(xù)用分解的方法,把這張表規(guī)范化到第三范式,消除傳遞函數(shù)依賴。

首先,對于不是候選鍵的每個決定因子,從關(guān)系模式中刪去依賴于它的所有屬性。在此表中,工作車間決定宿舍樓,工作車間這個決定因子并不是一個候選鍵,因此,把依賴于它的屬性宿舍樓刪去。

再者,新建一個關(guān)系模式,新關(guān)系模式中包含在原關(guān)系模式中所有依賴于該決定因子的屬性。那么新關(guān)系模式為(宿舍樓)。

最后,將決定因子作為新關(guān)系模式的主鍵。那么新關(guān)系模式為(工作車間、宿舍樓)。

這樣,我們就把(工號、工作車間、宿舍樓)這張第二范式的關(guān)系表分解為兩張第三范式的表(工號、工作車間),(工作車間、宿舍樓)。分解到第三范式了,這兩張表基本上不存在數(shù)據(jù)冗余,沒有數(shù)據(jù)冗余,也就基本上消除了操作異常。

3) 設(shè)置外鍵,保持表間的聯(lián)系,保證數(shù)據(jù)的完整性

經(jīng)過規(guī)范化,最終把員工信息表分解成了三個第三范式的關(guān)系表:

form1(工號、工作車間),工號是主鍵,工作車間為引用form2的外鍵。

form2(工作車間、宿舍樓),工作車間是主鍵,沒有外鍵。

form3(工號、零件號、工分),(工號、零件號)是主鍵,工號為引用form1的外鍵。

表之間的關(guān)系是通過外鍵來連接的。原來在一張表中的數(shù)據(jù),為了保證數(shù)據(jù)庫的性能,通過分解的方法變成了多張表,規(guī)范化到了第三范式,為了保持表中原數(shù)據(jù)間的聯(lián)系,我們可以通過設(shè)計(jì)外鍵的方法保持表間的聯(lián)系,保持?jǐn)?shù)據(jù)的依賴關(guān)系。例如,在前面的表中,定義form3表當(dāng)中的工號當(dāng)作外鍵,它參照form1表中的工號,這樣可以保證進(jìn)行零件加工的員工是在form1表中登記在冊的員工。這樣也就保證了這兩張表數(shù)據(jù)間的關(guān)聯(lián)關(guān)系。

關(guān)系規(guī)范化的方法是進(jìn)行模式分解,但分解后產(chǎn)生的關(guān)系模式應(yīng)與原關(guān)系模式等價,不能表面上消除了操作異?,F(xiàn)象,卻留下了其他的問題。為此,模式分解還要注意兩點(diǎn):一是模式分解具有無損連接性;二是模式分解能夠保持函數(shù)依賴。

4) 堅(jiān)持標(biāo)準(zhǔn)化的設(shè)計(jì)理念

在表設(shè)計(jì)原則中,應(yīng)盡量遵守第三范式的標(biāo)準(zhǔn),更高層次的標(biāo)準(zhǔn)也有,但更高標(biāo)準(zhǔn)不一定更好。事實(shí)上,對某些項(xiàng)目而言,甚至就連3NF都可能給數(shù)據(jù)庫引入太高的復(fù)雜性。有時為了提高運(yùn)行效率,就得適當(dāng)保留冗余數(shù)據(jù),對表不進(jìn)行標(biāo)準(zhǔn)化有時也是必要的,非標(biāo)準(zhǔn)化與加速訪問之間的妥協(xié)是有一定意義的,但絕不能把數(shù)據(jù)表的非標(biāo)準(zhǔn)化當(dāng)作理所當(dāng)然的設(shè)計(jì)理念[5]。適當(dāng)保留冗余數(shù)據(jù),具體做法是增加字段,但這具體的操作不過是一種派生,所以標(biāo)準(zhǔn)化的設(shè)計(jì)理念是要堅(jiān)持的,從根本上保證數(shù)據(jù)庫系統(tǒng)的高性能、高可用。

4 數(shù)據(jù)庫系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)的意義

數(shù)據(jù)庫系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)的意義在于為數(shù)據(jù)庫系統(tǒng)的穩(wěn)定性、安全性、完整性和高性能提供支撐。數(shù)據(jù)庫系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)是數(shù)據(jù)庫設(shè)計(jì)的“綱”。在數(shù)據(jù)庫系統(tǒng)的三級模式中,邏輯模式是數(shù)據(jù)庫系統(tǒng)的中間層,是對數(shù)據(jù)庫中的全體數(shù)據(jù)的描述,是所有用戶的公共數(shù)據(jù)視圖?!耙家渚V,萬目皆張”,設(shè)計(jì)出良好的邏輯模式,不僅能節(jié)省數(shù)據(jù)的存儲空間,而且方便數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā),還能保證數(shù)據(jù)的完整性等。

數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)往往工作量比較大,過程復(fù)雜,綜合性強(qiáng),涉及面廣,要確切表達(dá)用戶的需求,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,因此要努力把數(shù)據(jù)庫設(shè)計(jì)和系統(tǒng)其他成分的設(shè)計(jì)緊密結(jié)合,把數(shù)據(jù)和處理的需求、分析、抽象、設(shè)計(jì)和實(shí)現(xiàn)在各個階段同時進(jìn)行,相互參照,相互融合。

參考文獻(xiàn):

[1] 王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論[M].5版.北京:高等教育出版社,2014.

[2] 丁智斌,石浩磊.關(guān)系數(shù)據(jù)庫設(shè)計(jì)與規(guī)范化[J].計(jì)算機(jī)與數(shù)字工程,2005,33(2):114-116.

[3] 舒思思.淺談圖書管理系統(tǒng)的設(shè)計(jì)[J].湖北科技學(xué)院學(xué)報,2013,33(2):159-160.

[4] 郭文明.數(shù)據(jù)庫運(yùn)維[M].北京:國家開放大學(xué)出版社,2019.

[5] 陶勇,丁維明.數(shù)據(jù)庫中規(guī)范化與反規(guī)范化設(shè)計(jì)的比較與分析[J].計(jì)算機(jī)技術(shù)與發(fā)展,2006,16(4):107-109,121.

【通聯(lián)編輯:朱寶貴】

岳池县| 西乡县| 札达县| 河北区| 宁蒗| 灵川县| 虎林市| 水富县| 绥棱县| 渝北区| 玛多县| 宁国市| 九龙坡区| 荔波县| 体育| 广西| 丰镇市| 通州区| 印江| 江达县| 克拉玛依市| 响水县| 昌平区| 永胜县| 枝江市| 尚义县| 泾阳县| 浪卡子县| 平度市| 措美县| 巴东县| 尚义县| 婺源县| 保山市| 阿拉善盟| 武鸣县| 永善县| 永仁县| 三穗县| 晴隆县| 黄梅县|