美章網(wǎng) 資料文庫(kù) 數(shù)據(jù)庫(kù)設(shè)計(jì)中ER模型設(shè)計(jì)問題范文

數(shù)據(jù)庫(kù)設(shè)計(jì)中ER模型設(shè)計(jì)問題范文

本站小編為你精心準(zhǔn)備了數(shù)據(jù)庫(kù)設(shè)計(jì)中ER模型設(shè)計(jì)問題參考范文,愿這些范文能點(diǎn)燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。

數(shù)據(jù)庫(kù)設(shè)計(jì)中ER模型設(shè)計(jì)問題

摘要:數(shù)據(jù)庫(kù)設(shè)計(jì)中的概念結(jié)構(gòu)設(shè)計(jì)階段是一個(gè)復(fù)雜過程,學(xué)生在設(shè)計(jì)時(shí)往往不能很快的上手,或者設(shè)計(jì)出來的er圖不合理或錯(cuò)誤。本文針對(duì)學(xué)生在設(shè)計(jì)時(shí)易出現(xiàn)的問題和難點(diǎn)進(jìn)行分析,通過一個(gè)設(shè)計(jì)好的ER圖剖析其中存在的問題和錯(cuò)誤。進(jìn)而進(jìn)一步論述了屬性和實(shí)體的判斷方法,屬性間聯(lián)系的判斷和元數(shù)的確定方法,以及聚集的使用。通過論述為學(xué)生在數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)時(shí)提供可操作性強(qiáng)的方法和指導(dǎo)。

關(guān)鍵詞:概念結(jié)構(gòu)設(shè)計(jì);ER模型;聚集

引言

在數(shù)據(jù)庫(kù)原理課程教學(xué)中,長(zhǎng)期以來存在一個(gè)難點(diǎn),即數(shù)據(jù)庫(kù)設(shè)計(jì)。數(shù)據(jù)庫(kù)設(shè)計(jì)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造設(shè)計(jì)優(yōu)化的數(shù)據(jù)庫(kù)邏輯模型和物理結(jié)構(gòu),并據(jù)此建立數(shù)據(jù)及其應(yīng)用系統(tǒng),使之能夠有效的存儲(chǔ)和管理數(shù)據(jù),滿足各種用戶的應(yīng)用需求,包括信息管理要求和數(shù)據(jù)操作要求。在學(xué)完數(shù)據(jù)庫(kù)設(shè)計(jì)理論和數(shù)據(jù)操作后,學(xué)生對(duì)怎樣根據(jù)一個(gè)具體的應(yīng)用需求去設(shè)計(jì)一個(gè)優(yōu)化的數(shù)據(jù)庫(kù)仍然比較模糊。糾其原因主要有兩個(gè)方面:一、在數(shù)據(jù)庫(kù)的概念設(shè)計(jì)過程中,將需求轉(zhuǎn)化為數(shù)據(jù)庫(kù)的概念模式是一個(gè)復(fù)雜困難的過程。概念模式提供了一個(gè)應(yīng)用環(huán)境中數(shù)據(jù)庫(kù)用戶的數(shù)據(jù)需求,設(shè)計(jì)者需反復(fù)檢查以確保所有數(shù)據(jù)需求在此模式中都被滿足,并且不相互沖突、沒有冗余。這個(gè)過程是比較困難,它需要通過對(duì)需求進(jìn)行綜合、歸納和抽象。學(xué)生的這種綜合、歸納和抽象能力較弱,不能很好的完成。二、概念模式定義了數(shù)據(jù)庫(kù)中的實(shí)體、實(shí)體的屬性、實(shí)體之間的聯(lián)系以及實(shí)體上的限制。通常通過實(shí)體—聯(lián)系圖(ER圖)來描述概念模式。現(xiàn)有很多相關(guān)教材說法不一、編寫內(nèi)容過于簡(jiǎn)陋,甚至錯(cuò)誤,沒有實(shí)操性,給學(xué)生在學(xué)習(xí)和思考上帶來一定的誤導(dǎo)。本文就概念模式設(shè)計(jì)時(shí)遇到的一些基本問題和解決方法進(jìn)行探討。

1從一個(gè)錯(cuò)誤的ER圖說起

ER圖是描述概念模式的有力工具,它采用三個(gè)基本概念:實(shí)體集、聯(lián)系集和屬性。這里給出某一本科學(xué)生針對(duì)某企業(yè)考勤管理設(shè)計(jì)的ER圖,如圖1。該ER圖中存在的問題在很多同學(xué)的設(shè)計(jì)中都存在。

1.1數(shù)據(jù)需求和行為需求分不清

數(shù)據(jù)庫(kù)設(shè)計(jì)分為數(shù)據(jù)設(shè)計(jì)和行為設(shè)計(jì)兩個(gè)部分,在圖1中,設(shè)計(jì)者沒有分清楚數(shù)據(jù)設(shè)計(jì)和行為設(shè)計(jì)中各自的活動(dòng)內(nèi)容。ER圖表達(dá)的是應(yīng)用環(huán)境中的數(shù)據(jù)需求,而不用于行為需求的表達(dá)。數(shù)據(jù)庫(kù)概念模式的設(shè)計(jì)主要關(guān)注的是如何描述數(shù)據(jù)及其相互關(guān)系。在圖1中“更新”,“查詢”這些動(dòng)詞表達(dá)的是數(shù)據(jù)庫(kù)用戶的行為,而非實(shí)體集之間的相互關(guān)系,用戶行為是在編寫應(yīng)用程序時(shí)考慮的內(nèi)容。員工和考勤這兩個(gè)實(shí)體集之間的關(guān)系應(yīng)該是員工擁有考勤記錄,“擁有”是員工實(shí)體集和考勤實(shí)體集之間的關(guān)系。

1.2實(shí)體確定有誤

數(shù)據(jù)庫(kù)概念模式設(shè)計(jì)的目標(biāo)是產(chǎn)生反映應(yīng)用環(huán)境信息需求的ER圖,在圖1中出現(xiàn)了“管理員”實(shí)體集,如果設(shè)計(jì)者是從系統(tǒng)安全的角度考慮的話,管理員屬于數(shù)據(jù)庫(kù)的用戶,不是應(yīng)用環(huán)境的信息,不應(yīng)該出現(xiàn)在ER圖中;如果設(shè)計(jì)者是為了實(shí)現(xiàn)管理者實(shí)體集和考勤實(shí)體集之間的關(guān)系,因?yàn)楣芾碚邔?shí)體集是員工實(shí)體集中的部分實(shí)體,那么這時(shí)可以將管理者實(shí)體集和員工實(shí)體集合并,而不用單獨(dú)的把管理員實(shí)體集單獨(dú)的拿出來,這樣可以避免數(shù)據(jù)冗余。

1.3映射基數(shù)沒有標(biāo)注

映射基數(shù)是指明一個(gè)實(shí)體通過一個(gè)聯(lián)系集能同時(shí)與多少個(gè)實(shí)體相關(guān)聯(lián)。它依賴于該聯(lián)系集所建模的對(duì)象在現(xiàn)實(shí)世界中的實(shí)際情況。如果聯(lián)系集上的映射基數(shù)沒有標(biāo)注,那么概念模式在語義表達(dá)上信息不完整,對(duì)后續(xù)邏輯模型的設(shè)計(jì)將產(chǎn)生致命的影響。

1.4屬性歸屬的判斷

屬性是實(shí)體集中每個(gè)成員所擁有的描述性性質(zhì)。聯(lián)系也可以有描述性屬性。當(dāng)一個(gè)屬性是由參與的實(shí)體集聯(lián)合確定而不是由單獨(dú)的某個(gè)實(shí)體集確定時(shí),該屬性就必須放到聯(lián)系集中。日期屬性是用于記錄考勤中某一類型發(fā)生時(shí)的時(shí)間,它是管理聯(lián)系的描述性屬性,表示管理者管理考勤信息的日期,由管理者和考勤同時(shí)決定。

1.5實(shí)體屬性設(shè)計(jì)不合理

按照數(shù)據(jù)庫(kù)設(shè)計(jì)理論中的“一事一地”的原則,ER模型中,實(shí)體不應(yīng)該包含其它實(shí)體的屬性,實(shí)體之間的關(guān)系通過“聯(lián)系”來表達(dá)。考勤實(shí)體中包含了員工實(shí)體的主碼屬性,這是一個(gè)常見的錯(cuò)誤,因?yàn)閱T工實(shí)體和考勤實(shí)體之間可以通過“擁有”聯(lián)系表示兩者之間的關(guān)系,而不是將這種關(guān)系隱含在屬性中。與此相關(guān)的另一個(gè)常見的錯(cuò)誤是將相關(guān)實(shí)體集的主碼屬性作為聯(lián)系集的屬性,因?yàn)樵诼?lián)系集的表示中已經(jīng)隱含了這些主碼屬性。雖然在后續(xù)創(chuàng)建關(guān)系模式時(shí)這些屬性會(huì)出現(xiàn)在聯(lián)系集創(chuàng)建出的表中,但是,它們不應(yīng)該出現(xiàn)在概念模式的聯(lián)系集中。加班、出差、請(qǐng)假、遲到、曠到是考勤記錄的幾種類型,其中每種類型可以有多值,并且多種類型不可能同時(shí)存在,這樣就會(huì)使數(shù)據(jù)庫(kù)產(chǎn)生大量的空值,所以將其作為考勤的屬性是不合理的。需要將其進(jìn)行抽象,找出其共有的特征,因?yàn)榧影唷⒊霾睢⒄?qǐng)假、遲到、曠到這些屬于考勤的類型,所以將加班、出差、請(qǐng)假、遲到、曠到這些抽象為考勤的“類型”屬性,而加班、出差、請(qǐng)假、遲到、曠到這些作為“類型”屬性的屬性值。又因?yàn)榧影唷⒊霾睢⒄?qǐng)假、遲到、曠到等都涉及到時(shí)間段和具體的原因,所以在考勤實(shí)體上增加一個(gè)“內(nèi)容”屬性。

1.6一個(gè)可能的正確ER圖

在概念模型設(shè)計(jì)時(shí)遵從“一事一地”的原則,即概念單一化。在ER圖中創(chuàng)建的實(shí)體應(yīng)該清晰、純粹,盡可能與其他實(shí)體在意義上實(shí)現(xiàn)分離。完善的概念模式受到系統(tǒng)功能需求的影響,設(shè)計(jì)最終的概念模式應(yīng)能滿足系統(tǒng)的功能需求。經(jīng)綜合、歸納、抽象,按一定的功能需求將圖1的ER圖改為圖2的ER圖,這樣就清晰的表達(dá)了現(xiàn)實(shí)中員工實(shí)體集、考勤實(shí)體集和員工考勤的聯(lián)系集。

2ER圖設(shè)計(jì)需要考慮的幾個(gè)問題

ER圖是一種語義模型,力圖表達(dá)數(shù)據(jù)的意義。在設(shè)計(jì)時(shí)除了注意上述的知識(shí)點(diǎn)外,還需要注意以下幾個(gè)方面的內(nèi)容。

2.1用實(shí)體集還是屬性

實(shí)體是現(xiàn)實(shí)世界中可以區(qū)別于其他對(duì)象的事物,實(shí)體通過一組屬性來表示,屬性是實(shí)體集中每個(gè)成員所擁有的描述性性質(zhì)。實(shí)體和屬性都通過名詞來描述。什么作為屬性,什么作為實(shí)體集,對(duì)這兩個(gè)問題并不能簡(jiǎn)單的回答。名詞到底是實(shí)體還是屬性可以通過名詞之間的限定來判斷。如“職工”和“族別”都是名詞,如果說成“職工的族別”在需求描述中是成立的,并且這時(shí)不存在有任何的名詞被“族別”限定,那么就把“職工”作為實(shí)體,把“族別”作為“職工”的屬性。又如“職工”和“考勤”都是名詞,說成員工的考勤在需求描述中是成立的,但考勤中的請(qǐng)假,出差等值還有對(duì)應(yīng)的具體內(nèi)容,如請(qǐng)假的具體時(shí)間段、請(qǐng)假的原因等。這時(shí)考勤屬性值不具有原子性,所以把考勤提升為實(shí)體對(duì)待。其中的請(qǐng)假、出差、加班等作為考勤的種類屬性值,具體的時(shí)間段、原因等作為考勤的內(nèi)容屬性值。對(duì)上述員工考勤ER圖中,如果將考勤處理成員工實(shí)體的屬性,暗示對(duì)每個(gè)員工正好有一個(gè)考勤信息與之相關(guān)聯(lián)。而將考勤作為一個(gè)實(shí)體,就允許每個(gè)員工可以有幾個(gè)考勤信息與之相關(guān)聯(lián)。這兩者的主要差別是,將考勤作為一個(gè)實(shí)體來建模可以保存關(guān)于考勤的額外信息,如考勤的類型(請(qǐng)假、出差、加班等),考勤的具體內(nèi)容,因此把考勤視為一個(gè)實(shí)體比把它視為一個(gè)屬性的方式更具通用性;而且當(dāng)這種通用性很重要的時(shí)候,這種定義方式就更為合適了。

2.2二元聯(lián)系集與N元聯(lián)系集

聯(lián)系是指多個(gè)實(shí)體間的相互關(guān)聯(lián),一般通過動(dòng)詞來描述。哪些實(shí)體之間有聯(lián)系,看作為實(shí)體的名詞之間是否有動(dòng)詞存在,并且這個(gè)動(dòng)詞要體現(xiàn)在數(shù)據(jù)需求中。數(shù)據(jù)庫(kù)中的聯(lián)系通常都是二元的。如“職工”實(shí)體和“考勤”實(shí)體之間能說成“職工擁有考勤記錄”在數(shù)據(jù)需求描述中是存在的,并且是為管理員工考勤信息功能提供數(shù)據(jù)支持的。那么認(rèn)為“職工”和“考勤”之間的聯(lián)系是存在的。又如“管理員”實(shí)體和“職工”實(shí)體,可以說成“管理員管理職工”,如果在數(shù)據(jù)需求描述中不存在這樣的描述,那么“管理”這個(gè)動(dòng)詞就不作為聯(lián)系,即不考慮管理員和職工之間管理的聯(lián)系。對(duì)于非二元的聯(lián)系可以用多個(gè)二元聯(lián)系來表示,但如果這樣做會(huì)額外的增加設(shè)計(jì)的復(fù)雜程度,以及對(duì)總得存儲(chǔ)空間的需求。其實(shí)n元聯(lián)系集可以更清晰地表達(dá)n個(gè)實(shí)體集之間的聯(lián)系。如三元聯(lián)系:“供應(yīng)商給超市供應(yīng)商品”,這個(gè)“供應(yīng)”是三個(gè)實(shí)體集之間的聯(lián)系,如果將其設(shè)計(jì)為供應(yīng)商和超市之間的聯(lián)系、超市和商品之間的聯(lián)系、供應(yīng)商和商品之間的聯(lián)系這三個(gè)二元聯(lián)系。假設(shè)供應(yīng)商S1、S2給超市C1、C2供應(yīng)商品P1、P2,從三個(gè)二元聯(lián)中可以記錄S1給超市C1、C2供貨,S1供應(yīng)P1、P2商品,但是無法記錄S1給C1超市只供應(yīng)商品P1不供應(yīng)商品P2,S1給C2超市只供應(yīng)商品P2不供應(yīng)商品P1。而三元聯(lián)系就表達(dá)的非常清晰。

2.3聚集

ER模型的一個(gè)局限性在于它不能表達(dá)聯(lián)系間的聯(lián)系。但有時(shí)這在應(yīng)用設(shè)計(jì)時(shí)是必要的。這里用圖書借閱這個(gè)實(shí)例來做以說明。圖書和讀者之間有借閱的聯(lián)系,現(xiàn)在考慮讀者借閱圖書被罰款的請(qǐng)況,當(dāng)圖書歸還時(shí)有超期、損壞、丟失等事情發(fā)生時(shí)對(duì)讀者進(jìn)行罰款。一種方法是將罰款作為借閱聯(lián)系的一個(gè)多值屬性,因?yàn)橐恍┙栝喪菦]有罰款的,這樣會(huì)使得數(shù)據(jù)庫(kù)中罰款項(xiàng)存在大量的空值,從邏輯結(jié)構(gòu)和執(zhí)行開銷上都是不合理的。比如要查詢某一罰款項(xiàng)是哪個(gè)讀者借閱圖書的罰款就比較困難。另一種方法將罰款作為一個(gè)實(shí)體,為了表示罰款聯(lián)系,一種選擇是創(chuàng)建讀者、圖書、罰款之間的一個(gè)三元聯(lián)系,得到了圖3的ER圖(為了簡(jiǎn)單省略了實(shí)體集的屬性)。但是,按照這種方法產(chǎn)生的ER圖存在冗余信息,因?yàn)樵诹P款聯(lián)系集中的每個(gè)讀者信息和圖書信息在借閱聯(lián)系中也有。對(duì)上述情況建模的最好辦法就是使用聚集。聚集是一種抽象,通過這種抽象,聯(lián)系被當(dāng)作高層實(shí)體來看待。這樣,在這個(gè)例子中,將借閱聯(lián)系看成一個(gè)高層實(shí)體集,并且可以像對(duì)待任何別的實(shí)體集那樣對(duì)待這個(gè)高層實(shí)體集。這樣,就可以在罰款和借閱之間創(chuàng)建一個(gè)二元聯(lián)系來表示罰款是那一次借閱產(chǎn)生的。圖4所示為用聚集的概念表示上述情況的ER圖。

3總結(jié)

概念模式和具體應(yīng)用環(huán)境的需求分不開,相同的應(yīng)用環(huán)境下不同的需求可能對(duì)應(yīng)不同的概念模式,所以概念模式一定是依據(jù)需求得到的,不能脫離需求、更改需求。概念模式設(shè)計(jì)是數(shù)據(jù)庫(kù)設(shè)計(jì)過程中最易出錯(cuò)的部分,它涉及到人腦的抽象思維過程,需要大量的理論知識(shí)和實(shí)踐經(jīng)驗(yàn)。在設(shè)計(jì)時(shí)考慮的內(nèi)容繁多復(fù)雜。對(duì)于數(shù)據(jù)庫(kù)概念模型的設(shè)計(jì),很多的教材和參考資料都有設(shè)計(jì)步驟,粗看之下簡(jiǎn)約明了,但可操作性甚小。學(xué)生掌握了這些流程后仍不能正確快速的設(shè)計(jì)出概念模式。筆者結(jié)合多年的教學(xué)經(jīng)驗(yàn),在前人設(shè)計(jì)理論的基礎(chǔ)上進(jìn)行了總結(jié)分析,通過一個(gè)典型的錯(cuò)誤實(shí)例,分析了學(xué)生在設(shè)計(jì)概念模型時(shí)容易出現(xiàn)錯(cuò)誤的地方,通過分析使學(xué)生清楚的理解數(shù)據(jù)庫(kù)概念模式設(shè)計(jì)時(shí)應(yīng)注意的知識(shí)點(diǎn)。為學(xué)生設(shè)計(jì)概念模式提供了有力的理論依據(jù)和設(shè)計(jì)方法。

參考文獻(xiàn):

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

[3]趙良輝.數(shù)據(jù)庫(kù)課程中ER模型設(shè)計(jì)的反例教學(xué)[J].教育技術(shù),2012,8:8-10.

[4]徐廣定,潘錦平.實(shí)體聯(lián)系模型-用作數(shù)據(jù)的統(tǒng)一的觀點(diǎn)[J]計(jì)算機(jī)工程與應(yīng)用,1983,12:22-37.

作者:牛榮 陳紀(jì)龍 杜義君 單位:塔里木大學(xué)信息工程學(xué)院

主站蜘蛛池模板: 亚洲国产日韩欧美在线as乱码| 天堂…在线最新版资源| 人妻18毛片a级毛片免费看| 蹂躏国际女刑警之屈服| 在线观看毛片网站| 中文天堂最新版www官网在线| 欧美成人免费tv在线播放| 免费的涩涩视频在线播放| 色费女人18毛片**在线| 国产日韩精品一区二区在线观看播放| 一二三四日本高清社区5| 最近高清中文在线国语视频完整版 | 极品人体西西44f大尺度| 免费无码黄十八禁网站在线观看| 国产4tube在线播放| 夜夜夜精品视频免费| 一道本在线免费视频| 无遮挡h肉动漫网站| 久久精品一区二区东京热| 欧美人与物videos另类xxxxx| 再深点灬舒服灬太大了一进一出| 久久综合热88| 国产精彩视频在线观看免费蜜芽| 不卡中文字幕在线| 日本免费网站视频www区| 久久精品综合一区二区三区| 欧美三级在线看中文字幕| 亚洲欧美日韩中文字幕在线一区| 精品综合久久久久久99| 国产乱人视频在线看| 黄床大片30分钟免费看| 国产高清在线观看| 一级毛片成人午夜| 日韩在线观看高清| 亚洲中久无码永久在线观看同| 猴哥影院在线播放视频| 六月丁香婷婷综合| 草莓视频在线观| 国产精品亚洲w码日韩中文| 91亚洲欧美国产制服动漫| 在线综合 亚洲 欧美中文字幕|