010-88462659
北京(jīng)一起草www.17.c.com世紀模型技術發展有限公司是(shì)國內展示模型行業(yè)知名和具技術實力的專業模(mó)型公(gōng)司之一,公司由機械工程師、自動化工程師、工藝美術師、資深模型技師等為(wéi)技術骨幹,一批具有高度敬業精神的機械模型技師組成的(de)Team。
了解更多 >>
北(běi)京(jīng)一起草www.17.c.com世紀模型技(jì)術發(fā)展有限公(gōng)司是(shì)國內(nèi)展(zhǎn)示模型行業內知名和具(jù)技術實力的專業模型公司之一,公司由機(jī)械(xiè)工程師、自動化工程師、工藝(yì)美術師、資深模(mó)型技師等為技(jì)術骨幹,一批具有高度敬業精神的機(jī)械模型技師組成的Team2。
了解更多 >>
北京維(wéi)克(kè)世紀模型技術發展有限公司是國內展示模型行業內知名和具技術實力的專(zhuān)業模型公司之一,公(gōng)司(sī)由機械工程師、自動化工程師(shī)、工(gōng)藝美術師、資深模型技師等為技術骨幹,一批具有(yǒu)高度敬業精神(shén)的機械(xiè)模型技師組成的Team5。
了解更多 >>
數據模型分為兩種類型:
一種是獨(dú)立於任何計算機係統實現的,如實(shí)體聯係(xì)模型(xíng),這類模型完全不涉及信息在計算機係統中的表(biǎo)示,隻是用來描述某個特定組(zǔ)織所關心的信(xìn)息結構(gòu),因而又被稱作“概念(niàn)數(shù)據模型”。
另一類數據(jù)模型則是直接麵向數據庫(kù)中數據邏輯結構的,例如(rú)有關係、網(wǎng)狀、層次、麵向對象等模型。這類模型涉及到計算機係統,一般又稱為(wéi)“基本數據模型”或(huò)“結構數據(jù)模型”。
建立數(shù)據庫(kù)係統的目的,是為了實現對現實世界中各(gè)種信(xìn)息(xī)的計算機處理。換言之,要實現計算機(jī)對(duì)現實世界中各種信息的自動化、高效化的處(chù)理,首先必須(xū)建立能(néng)夠存儲(chǔ)和管理現實世界中的信息的數據庫係(xì)統。數據模型是數據庫係(xì)統的(de)核心和基(jī)礎。任何一種(zhǒng)數據庫係統,都必須建立在一定的數據模型(xíng)之上。由於現實世(shì)界的複雜性(xìng),不可能直接從現實世界中建立數據模型。
現實世界 →(抽象)→ 信(xìn)息世界 →(轉化)→ 數據世界
(建立概(gài)念模型) (建立數(shù)據模型)
(而首先要把現實世(shì)界抽象為信息世界,並建立信息世界中的數據模(mó)型,然後再(zài)進一步把信息世界中的數據模型轉化為可以在(zài)計算機中實現的、最終支持數據庫係統的數據模型)。信息世界中的數據(jù)模型又稱為(wéi)概念模型,概念模型必須具有:
(1)抽象的真實性:是對現實世界本質的、確實存(cún)在的內容的抽象。而忽略了現實世界中非本質的(de)和與研究主題無關的內容。
(2)完整、精確的語義表達力,能夠模擬現實世界中本質的、與研究主題有關(guān)的各種情況
(3)易於理解和修改
(4)易於向(xiàng)DBMS所持(chí)的數據模型轉換,現實世界(jiè)抽象成信息世界的目的,是為了用計算機處理現實世界中的信息。
概念模型,作為從現(xiàn)實世界到其(qí)數據世界轉換的中間(jiān)模型,它不考慮數據的操作,而隻是用比較有效的、自然的方式來描述現實世界的數據及其聯係。
最(zuì)著名、最實用的概念模型設計方法是P.P.S.Chen於(yú)1976年提出的“實體-聯係模型”(Entity-Relationship Approach),簡稱E-R模型。
E-R模型的(de)基(jī)本構構成:
三個主要概念(niàn):實體集、聯係集和屬性,分別用矩形框、菱形框和橢圓表示。
聯(lián)係(xì)集的類型:一對一(1:1)、 一對多(1:n)、多對多(m:n)及表示
主碼的表示:用帶下劃線的屬性(xìng)表示
多元聯係
在E-R中,可以表示兩個以上實體(tǐ)集之間的聯(lián)係,稱為多(duō)元聯係。
聯係的(de)屬性
聯係集和實體集一樣,也可以(yǐ)有自己的屬性,來表(biǎo)現聯(lián)係的特點。
自身聯係
在一個聯係中,一個實體可(kě)以出現兩次(cì)或多次,扮演多個不同角色,此種情況稱為實體集的自身聯係。
例如,同一部門中,職工與職工之間(jiān)可以有領導和被領導的關係。
子類和 is-a 層次聯係
信息世界中常常(cháng)有這(zhè)樣的實(shí)體集B,它(tā)屬於另一個實體集A,B中實體的都有特殊的(de)屬性需要描述,並且這些特殊屬性對(duì)實體集A的(de)其它實體無(wú)意義。在E-R模型中,稱B是A的子(zǐ)類,或A是B的父類(lèi)。兩類實體集之間存在著一種層次聯係(xì)——is-a 聯係。
例如,一個企業中的職工實體集和經理實體集,經理集中的每一位(wèi)經理,又是職工集中的一位職工,他具有職工的所有屬(shǔ)性,但他自己的屬性“任職時間”對職工(gōng)集的其他(tā)職工卻沒意義。此時,我(wǒ)們可以說,經理集與職(zhí)工集存在著 is-a 聯係。(P85圖5-8所示)
在設計E-R模型(xíng)時,首先應(yīng)根據需求分析,確認實(shí)體集(jí)、聯係集和屬性這三種E-R模型的基本要素。
需要強調的三條設計(jì)原則是:
(1)相對原則:
建模的過程實際上是對對象抽象的(de)過(guò)程。實(shí)體(tǐ)、聯係(xì)、屬性,是對同一個對象抽象過程的不同解釋和理解。在同一情況下不同的人(rén),或同一人在(zài)不同的情況下,對事(shì)物抽象的結果可能是(shì)不同的。
在E-R模型的整個設計過程中,實體、聯係(xì)和屬性不是一成不變的,而可能會(huì)被不斷的調整和(hé)優化。
(2)一致原則(zé):
同一對象在不同的業務係統中抽象的結果要求保持一致。因為業務係統是建立係統(tǒng)的各子係統。
(3)簡單原則:
為簡(jiǎn)化E-R模型,現實世(shì)界中的事物,能(néng)作屬性對待時(shí),應盡量作為屬性處理。
屬性與實體(tǐ)和聯係之間,並無一定界限。當屬(shǔ)性滿足如(rú)下(xià)兩(liǎng)個條件時,就不能作(zuò)實體或聯係對待:
① 不再(zài)具有需要進一步(bù)描述的性質,因為屬性在含義上是不可再分的數據項
② 性不能再與其它實體集具有聯係,即E-R模型中的聯係隻能是實(shí)體集之間的聯係。
設計一個大型(xíng)的企業或單位的E-R模型,一(yī)般按照先(xiān)局部、後整體,最後優(yōu)化的方法進行。
下麵以一個企業的(de)職工信息管理(lǐ)係統為例,說明E-R模型的設計過程:
該管理(lǐ)係(xì)統(tǒng)涉及到三個部門的業務:
Ø 人事處管理職工的基本信息、職務信息和所(suǒ)在部門(mén)信息
Ø 財務處管理(lǐ)職工的工資情況
Ø 科(kē)研處管理科研項目和職工參加(jiā)項目的情況
第一步:確定局部(bù)應用範圍,設計局部E-R模型(xíng)
(1)確(què)定局(jú)部應用範圍
本例中初步決定按照不同的職能部門劃分不同的應用範(fàn)圍,即分為三個子模塊:人(rén)事管理、工資管理和項目管理。
下麵以人事管理為例,說明設計局部E-R模型的一般過程。
(2)確認實(shí)體集
在人事管理中,需要對職(zhí)工、部門、職(zhí)稱職務進行管理,所以需要確定相應的三個實體集
(3)確認實體集間的聯係集
需要判斷所有二二實體集之間是否(fǒu)存在或存在著怎樣聯係:
Ø 職工與部門:n:1;
Ø 職工與職稱職務:m:n
Ø 部門(mén)與職稱職務之間沒有聯係
(4)確認實體集及聯係集的屬性(xìng)
Ø 職工:職工號、姓(xìng)名、性別、年(nián)齡
Ø 部(bù)門:部(bù)門號、名稱、電話
Ø 職稱(chēng)職(zhí)務:代號、名稱、津貼,住房麵積
Ø 職(zhí)工和職(zhí)稱職務的聯係:任職(zhí)時間;
Ø 職工和(hé)部門的聯係,沒有(yǒu)單獨的屬性;
(5)畫出局(jú)部E-R模型
第二步:集成局部(bù)E-R模型,形成(chéng)全(quán)局初步的E-R模型
由(yóu)於(yú)各局部E-R模型設計時所考慮問題的角度不同和各自業務需要的不同,合並各局部E-R模型時可能會存在許多不一致的地方,稱為衝突。而這些衝突,必須在合並局部E-R模型時進行合理的消除。
衝突主(zhǔ)要有(yǒu)如下三類(lèi):
(1)命名衝突(tū):
包括實體集名、聯係集名和屬性名之間(jiān)的(de)同名(míng)異義和異(yì)名同義等衝突。
同名異義:同樣的(de)名稱,在不同的局部E-R模(mó)型中表示不同含(hán)義的(de)對象
異名同義:相同意義的對象在不同局(jú)部E-R模型中(zhōng)具有不同的名稱
命名衝突通過不(bú)同部門間(jiān)協商解決
(2)屬性衝突:
包括屬性值類型、取值範(fàn)圍、數量(liàng)單(dān)位的衝(chōng)突
(3)結構衝突:
包括兩種情(qíng)況:
Ø 一是同一對象在不同(tóng)應用中具有的抽象不同。如職工(gōng)工資,在人事(shì)部門的業務中可能作為屬性對(duì)待,而在財務部(bù)門的業務中會作為一個實體集處理。另外,實體集間的聯係在不同的業務應用中也可能有不同的(de)聯係集。
Ø 二是同一實體在各局部(bù)應用中包含(hán)的屬性個數和屬性排列次序不完全相同(tóng)。
處理衝突,要根據具體需求分析(xī),在各方兼顧的(de)情況下,對發生衝(chōng)突(tū)的屬性(xìng)、實體集、聯係集進行合理(lǐ)的調整和綜合。形成一個全係統用戶共(gòng)同理解和認可的統一的E-R模型,是合並各局部E-R模型的主要工作和關鍵所在。
在集成全局E-R模型時,一般采用兩兩集成的方法進行。將兩個(gè)具有相同實體集的E-R模型,以該相同實體集為基準(zhǔn)進行集成。
第三步:消除(chú)冗餘,優化全局E-R模型
一個“好”的全局E-R模型,除了能夠滿足用戶的功能需求外,還必須符合下列三個條件:
Ø 實體集個數應盡可能少;
Ø 實(shí)體(tǐ)集(jí)所含屬性盡可能少;
Ø 實體集間(jiān)的聯係無冗餘。
對於具有1:1的聯(lián)係的,且有相同碼(mǎ)的兩個實體集可以合並,以減少實體集的個數;
另外,有些實體集中(zhōng)的屬(shǔ)性,可(kě)能是冗餘數據,需要進行適當的取舍。
所謂冗餘數據,是指在不同(tóng)實體集中重複存在的,或在同一實體集中可以由其它(tā)屬性值計算得到的數據。
冗餘數據一方麵加大了(le)工作量,浪費了存儲空間(jiān),另一方麵,又有可能造成數據(jù)的不一致性,破壞數據的完整(zhěng)性。
但(dàn)並不是所有的數據冗餘都必須被消除,所有(yǒu)能合並的實(shí)體集都要被合(hé)並,有時,為了工作的方便(biàn)或工效的提高,要保持適當的數據冗餘,和合理的實體集分解。
E-R模型是概念模型的表(biǎo)示(shì)。它是對現實世界客觀事務及其聯係的抽(chōu)象,是用戶對係統的應用需求的概念化表示,計算機不能直接處理它。
要使計算機能(néng)夠處理E-R模型中的信息。首先必須將它轉化為具體的DBMS能處(chù)理的數據模型。
E-R模型可(kě)以向現有(yǒu)的各種(zhǒng)數據模型轉換。而目前市場上DBMS大部分是基於關係數據模(mó)型的,所以我(wǒ)們隻學習(xí)E-R模型(xíng)向關係(xì)數據模型的轉換方法。
從E-R圖中可以看出,E-R模型實際上是實體型及實體間(jiān)聯係所組成的有機整體,而前麵我們(men)也學(xué)過,關係模(mó)型的邏輯結(jié)構是一係列關係模式的集(jí)合。所以將E-R模型轉化為關係模型,實質上就是將實體型(xíng)和(hé)聯係(xì)轉化為關係模式。也就是如何用關係(xì)模式來表達實體型以及實體集之間的聯係的問題。下麵學習(xí)這種轉化的步(bù)驟:
第一步:將(jiāng)每(měi)一個實體型轉換為一個關係模式(shì)
將實體集的屬(shǔ)性轉換(huàn)成關係的屬性,實體集的碼對應關係的碼。實體(tǐ)集的名對應關係的名。例如職工管理係統全局E-R模型中的五個實體集可以表示如下:
Ø 職工(職工號,姓名,性別,年齡)*
Ø 部門(部門號,名稱,電話,負責人)
Ø 職稱(chēng)職務(代號,名稱(chēng),津貼,住房麵積(jī))
Ø 工資(zī)(工(gōng)資號,補貼(tiē),保險,基本工資,實發(fā)工資)
Ø 項(xiàng)目(mù)(項目號,名稱,起始(shǐ)日期,鑒(jiàn)定日期)
第二步:將每個聯係轉換為關係模式
用關係(xì)表示聯係,實質上是用關係(xì)的屬(shǔ)性描述聯係,那麽該關係(xì)的屬性從何(hé)而來呢?我們說,對於給定的聯係R,由它所轉換的關係具有以下屬性:
Ø 聯係R單獨的屬性都轉換為該關(guān)係的屬性;
Ø 聯(lián)係R涉及到的每個實(shí)體(tǐ)集的碼(mǎ)屬性(集)轉換為該關係的屬性。
如職工管理係統中的(de)聯係可(kě)以表示如下:
Ø 分工(gōng)(職工號,部門號)* n:1聯係(xì)
Ø 任職(職工號,代號,任職日期) n:m 聯係
Ø 擁有(職工號,工資號)* 1:1聯係,職工號和工資號都可以作為主碼
Ø 參加(職工號,項(xiàng)目號,角色) n:m聯係(xì)
根據聯(lián)係的類型不同,聯係轉換為關係(xì)後,關(guān)係的(de)碼的確定也相應有不同的規則:
Ø 若(ruò)聯係R為1:1聯係,則每個相關實體的碼均可作為關係的候選碼;
Ø 若聯係R為1:n聯係,則關係的碼為n端實體的(de)碼;
Ø 若聯(lián)係R為n:m聯係,則關係的碼為相關實(shí)體的碼(mǎ)的集合;
第三(sān)步:根據(jù)具體情況,把具有相同碼(mǎ)的多個關係模式(shì)合並(bìng)成一(yī)個關係模式
具有相同碼的不同關係模式,從本質上說,它們描述的是同一實體的不同側麵(即屬性),因此,它們可以合並。合並的過程也就是將對事物不(bú)同側麵的(de)描述轉化為對事物的全方位的描述。
合並後關係包括兩關係的所有屬性,這樣做可以簡化係統,節省存儲空間。上列關係中的職工關係、分工關係和擁有關係(xì)就可以合並為一:
職工(職工(gōng)號,姓名,性別,年齡,部門,工資號)
現在我們不難看(kàn),當將聯係R轉換為關係模式時,隻有當R為m:n聯(lián)係時,才有必要(yào)建立新(xīn)的關(guān)係模(mó)式;當R為1:1、1:n及is-a聯係時,隻需對與該聯係有關的關係作相(xiàng)應的修改(gǎi)即可。
在關係數據模(mó)型產生之前,數據庫管理係(xì)統普遍(biàn)使用的數(shù)據模型是層次和網狀數據模型,它們又被稱為非關(guān)係數據模型.它(tā)們(men)的(de)數據結構和圖的結(jié)構是相互對應的.
在非關係模型中,概念模(mó)型中的實體型(xíng)反映(yìng)為記錄型, 實(shí)體型的屬性反(fǎn)映(yìng)為記錄(lù)的(de)字段。因此,圖的(de)結點(diǎn)表示(shì)為記錄型,結點(diǎn)之間的連線(xiàn)表示為記錄型之間的聯係。
在非關係數據模型中,將兩個記錄型之間的一對(duì)一(yī)、一對多和多對多的聯係,歸結為一個(gè)隻有1:n聯係的基本(běn)層(céng)次聯係,(因為1:1可以看(kàn)作是1:n的特例,m:n可以分解為兩個1:n的聯係)。
一起草www.17.c.com模型專業致力於模型,工業模型,建築模型,軍事(shì)模型等服務領域.查找模型,工業模型,建築模型,模型公司請到維(wéi)克模型網.詳(xiáng)情登陸:http://www.hgsqhzx.com