SQL Server數據庫學習筆記-概念數據模型


    概念數據模型(Conceptual Data Model)也稱為信息模型。它是對客觀事物及其聯系的抽象,用於信息世界的建模,是現實世界到信息世界的第一層抽象,是數據庫設計人員進行數據庫設計的有力工具。概念數據模型擺脫了計算機系統及數據庫管理系統的具體技術問題,集中精力分析數據及數據之間的聯系等,與具體數據庫管理系統無關。概念數據模型必須轉換成邏輯數據模型,才能在數據庫管理系統中實現。它強調其語義表達能力,即能夠較方便、直接地表達應用中的各種語義只是。這類模型概念簡單、清晰、易於被用戶理解,是數據庫設計人員和用戶之間進行交流的語言。

    Pter Pin-Shan Chen在1976年提出的實體-聯系的方法,簡稱E-R模型(Entity-Relationship Model),是最為著名的一種概念模型的表示方法。該方法用E-R圖來描述現實世界的概念模型。E-R模型能夠清楚地表達被描述對象的語義,用圖形化方式描述數據及其之間的關系,簡單、容易理解掌握、且易被轉換成關系數據模型。

    為了適應新的應用需求,在基本E-R模型的基礎上又提出了擴展實體聯系模型(Extend entity-Relationship Model),簡稱為“EER模型”。這種模型能表示更多的語義,擴充了子類型的概念,為面向對象的數據庫設計提供了郵箱工具。

1. 概念模型的基本概念

  實體(Entity)

    客觀存在並可相互區分的事務稱為實體。實體可以是具體的人、事和物,也可以是抽象的概念或聯系。例如,學生是一個實體。

  屬性(Attribute)

    實體所具有的若干特征稱為屬性,其中每一個特征就稱為實體的一個屬性。屬性必須相對實體而存在。例如,學生實體可以由學好、姓名、性別、出生年份、所屬院系、入學年份等屬性組成(20140505,張珊,女,1992,計算機系,2014),這些屬性組合起來表征了某一個學生。

  碼(Key)

    唯一標識實體的屬性集稱為碼。例如,學號是學生實體的碼。

  域(Domain)

    屬性的取值范圍稱為該屬性的域。例如,學號的域為6位整數,姓名的域為字符串集合,年齡的域為小於28的整數,性別的域為(男,女)。

  實體型(Entity Type)    實體型由實體名稱和屬性名稱集合組成的形式來抽象和刻畫同一類實體。例如,學生(學號,姓名,性別,出生年份,所屬院系)就是一個實體型。

  實體集(Entity Set)

    同一類型實體的集合稱為實體集。例如,全體學生就是一個實體集。

  聯系(Relationship)

    現實世界中事物之間的聯系在概念模型中必然要加以反映。一般存在兩類聯系:一是實體內部聯系,通常是指實體的各屬性之間的聯系;二是實體之間的聯系,通常是指不同實體之間的聯系。

2. 聯系

    兩個實體型之間的聯系稱為二元聯系,是現實世界大量存在的聯系,可以分為3類。

(1) 一對一(1:1)聯系

    實體集A只和實體集B有關系,同樣實體B只和實體A有關系,記為1:1,。例如,一個學校只有一個正校長,而一個校長只在一個學校任職,則學校與校長之間具有一對一聯系。

(2)一對多或多對一聯系

    實體集A在實體集B中對應多個實體,B中每個實體對應A中的一個實體,記為1:n。反之亦然,記為n:1。例如,一個專業中有若干名學生,而每個學生只在一個專業中學習,則專業與學生之間具有一對多的聯系。

(3)多對多(m:n)聯系

    實體集A在實體集B中對應多個實體,反之B中每個實體對應A中的多個實體,記為m:n。例如,一個教師可以有很多學生,一個學生也可以有多個老師,則教師與學生之間具有多對多的聯系。

實體之間的三種聯系

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    實際上,一對一聯系是一對多聯系的特例,而一對多聯系有事多對多聯系的特例。

    一般情況下,3個以上的實體型之間也存在着一對一、一對多、多對多的聯系,稱為多元聯系。例如,對於課程、教師與參考書3個實體型,如果一門課程可以有若干個教師講授,使用若干本參考書,而每一個教師之講授一門課程,每一本參考書只供一門課程使用,則課程與教書、參考書之間的聯系是一對多的。

三個以上實體的聯系

    同一個實體集內的各個實體之間也可以存在一對一、一對多、多對多的聯系,稱為一元聯系。例如,職工實體集內部具有領導和被領導的聯系,即某一職工(干部)領導若干名職工,而一個職工僅被另外一個職工直接領導。因此是一對多的聯系。

單個實體型之間一對多的聯系

 

3. 概念模型的表示方法

    概念模型的表示方法很多,其中最著名也是最常用的表示法是E-R方法,也稱為E-R模型。它用E-R圖來描述現實世界的概念模型。E-R圖的主要成分是實體型、屬性和聯系。

(1)實體型:用矩形表示,矩形框內寫明實體名。

(2)屬性:用橢圓形表示,並用無向邊把實體與屬性連接起來。

(3)聯系:用菱形表示,菱形框內寫明聯系名,並用無向邊分別把菱形與有關實體相連接,在無向邊旁標上聯系的類型(1:1,1:n或m:n)。需要注意的是,如果一個聯系具有屬性,則這些屬性也要用無向邊與該聯系連接起來。

   例如,學校中有一個校長和若干個班級,每個班級有若干個教師和學生,每個教師教授許多學生,每個學生都有學號、姓名、性別、班級、入學時間屬性。

E-R圖示例

   需要說明的是,E-R圖的繪制有兩種方法:集成法和分離法。集成法是將一個系統的所有實體、實體屬性,實體與實體之間的聯系全部畫在一個圖上,形成一個完整的E-R圖。這種畫法適合描述規模不大的數據庫系統,圖2-5所示即是集成法繪制的E-R圖。分離法是先分別畫各個實體及其屬性圖,然后再畫實體間聯系圖,這種畫法適合描述規模較大的數據庫系統。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM