教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

什么是關(guān)系模型?【案例詳解】

更新時間:2022年11月30日15時17分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

關(guān)系模型由IBM公司研究員Edgar Frank Codd于1970年發(fā)表的論文中提出,經(jīng)過多年的發(fā)展,已經(jīng)成為目前最常用、最重要的模型之一。

在關(guān)系模型中有一些基本的概念,具體如下。

(1)關(guān)系(Relation)。關(guān)系一詞與數(shù)學(xué)領(lǐng)域有關(guān),它是集合基礎(chǔ)上的一個重要的概念,用于反映元素之間的聯(lián)系和性質(zhì)。從用戶角度來看,關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)是二維表,即通過二維表來組織數(shù)據(jù)。一個關(guān)系對應(yīng)一張二維表,表中的數(shù)據(jù)包括實體本身的數(shù)據(jù)和實體間的聯(lián)系。

下面通過圖1演示一個簡單的學(xué)生信息二維表。

關(guān)系模型數(shù)據(jù)二維表

(2)屬性(Attribute)。二維表中的列稱為屬性,每個屬性都有一個屬性名。

(3)元組(Tuple)。二維表中的每一行數(shù)據(jù)稱為一個元組。

小提示:根據(jù)不同的習(xí)慣,屬性也可以稱為宇段(Field),元組也可以稱為記錄(Record)。

(4)域(Domain)。域是指屬性的取值范圍,例如,性別屬性的域為男、女。

(5)關(guān)系模式(Relation Schema)。關(guān)系模式是關(guān)系的描述,通??梢院営洖?ldquo;關(guān)系名(屬性1,屬性2,…,屬n)”。例如,圖1-9中的二維表的關(guān)系模式如下。

學(xué)生(學(xué)號,姓名,性別,出生年月)

(6)鍵(Key)。在二維表中,若要唯一標(biāo)識某一條記錄,需要用到鍵(又稱為關(guān)鍵字、碼)。例如,學(xué)生的學(xué)號具有唯一性,學(xué)號可以作為學(xué)生實體的鍵。而學(xué)生姓名可能存在重名,不適合作為鍵。通過鍵可以為兩張表建立聯(lián)系,如圖1所示。

1668590960023_學(xué)生表2.png

表1 學(xué)生與班級表

在圖1中,班級表中的“班級號”是該表的鍵,學(xué)生表中的“班級號”表示學(xué)生所屬的班級,兩者建立了一對多的聯(lián)系,即一個班級中有多個學(xué)生。其中,班級表的“班級號”稱為主鍵(Primary Key),學(xué)生表的“班級號”稱為外鍵(Foreign Key)。

學(xué)生與課程的多對多聯(lián)系,可以通過中間表來實現(xiàn),如圖2所示。

1668591956750_課程表.png

表2 學(xué)生表與課程表

在圖2中,學(xué)生表與課程表之間通過學(xué)生選課表關(guān)聯(lián)。學(xué)生選課表將學(xué)生與課程的多對多關(guān)系拆解成兩個一對多關(guān)系,即一個學(xué)生選修多門課,一門課被多個學(xué)生選修。

0 分享到:
和我們在線交談!