官术网_书友最值得收藏!

1.2.1 關(guān)系模型

關(guān)系模型由一組關(guān)系組成。每個關(guān)系的數(shù)據(jù)結(jié)構(gòu)就是一張規(guī)范化的二維表。圖1.2給出了一張Access中的學(xué)生表,這就是一個關(guān)系。圖1.3是一張選課成績表,這也是一個關(guān)系。這兩張表中都有同樣的屬性“學(xué)生編號”,根據(jù)學(xué)生編號將兩個關(guān)系關(guān)聯(lián)起來。

圖1.2 學(xué)生表

圖1.3 選課成績表

1.基本術(shù)語

(1)關(guān)系(Relation)

一個關(guān)系就是一張二維表,每個關(guān)系都有一個相對應(yīng)的關(guān)系名。在Access中,一張數(shù)據(jù)表就是一個關(guān)系,表的名字就是關(guān)系名。

關(guān)系模式:對關(guān)系的描述。

關(guān)系模式的格式為:

關(guān)系名(屬性名1,屬性名2,…,屬性名n)

在Access中,關(guān)系模式表現(xiàn)為表的結(jié)構(gòu):

表名(列名1,列名2,…,列名n)

例如:學(xué)生(學(xué)生編號,姓名,性別,年齡,入校日期,團員否,住址,照片)

選課成績(選課ID,學(xué)生編號,課程編號,成績)

(2)元組(Tuple)

在一個二維表中,一行即為一個元組,也稱為一條記錄。元組在Access表中對應(yīng)一條具體的記錄。例如,學(xué)生表和選課成績表中都包含了多條記錄,每一行即為一條記錄。

(3)屬性(Attribute)

在一個二維表中,一列即為一個屬性,也稱為字段。給每個屬性起一個名稱即屬性名(或稱字段名)。例如,學(xué)生表有8列,對應(yīng)8個屬性(學(xué)生編號,姓名,性別,年齡,入校日期,團員否,住址,照片)。

(4)域(Domain)

域就是屬性的取值范圍。例如,“性別”屬性取值范圍為“男”“女”兩個漢字,“團員否”屬性取值范圍只能從邏輯真或邏輯假兩個值中取值(Yes或No)。

(5)分量(Component)

分量就是元組中的一個屬性值。例如,“121032101”是一個學(xué)生的學(xué)生編號。

(6)碼(也稱關(guān)鍵字或鍵,Key)

表中的某個屬性或?qū)傩越M,其值可以唯一確定一個元組。例如,學(xué)生表中的學(xué)生編號可以唯一確定一個學(xué)生,也就成為學(xué)生關(guān)系的碼。姓名字段中,有可能兩個學(xué)生的姓名是一樣的,因此,姓名不能作為唯一確定一個元組的關(guān)鍵字。假如學(xué)生表中還有一個身份證號屬性,因為每個人的身份證號均不相同,它也能唯一確定一個學(xué)生,因此,它可作為候選鍵。在一張表中,可以有多個候選鍵,選擇其中一個可以作為此表中的主關(guān)鍵字(主鍵)。在Access中,主鍵就起到了唯一標(biāo)識一條記錄的作用。例如,學(xué)生編號即為學(xué)生表中的主鍵,選課ID是選課成績表中的主鍵。

(7)外關(guān)鍵字(Foreign Key)

如果表中的一個關(guān)鍵字不是本表的主關(guān)鍵字,而是另外一個表的主關(guān)鍵字或者候選關(guān)鍵字,則這個屬性就稱為外關(guān)鍵字(外鍵)。

例如,選課成績表中,學(xué)生編號不能唯一確定表中的一條記錄,它不是本表中的主鍵,但它是學(xué)生表中的主鍵,則學(xué)生編號就是選課成績表中的外鍵。外鍵可以把兩張有聯(lián)系的表關(guān)聯(lián)起來。學(xué)生表和選課成績表通過學(xué)生編號這個字段建立了聯(lián)系。

2.關(guān)系的性質(zhì)

(1)關(guān)系的每一個屬性值必須是不可再分的元素。

關(guān)系模型要求關(guān)系必須是規(guī)范化的,即關(guān)系必須滿足一定的規(guī)范條件。其中最基本的條件就是,關(guān)系的每一個分量必須是一個不可分的數(shù)據(jù)項,也就是說,表中不能再含有表。

(2)每一列中的數(shù)值是同類型的數(shù)據(jù),來自同一個域。

(3)不同的列應(yīng)給予不同的屬性名。

在同一個關(guān)系中不能出現(xiàn)相同的屬性名。在Access中,同一張表中不能有相同的字段名。

(4)任意兩個元組不能完全相同。

在Access中,同一張表中不能有兩條完全相同的記錄。

(5)行列的次序可以任意交換。

在一個關(guān)系中,行的次序無關(guān)緊要,列的次序也無關(guān)緊要。任意交換兩行或兩列的位置不影響數(shù)據(jù)實際的意義。例如,在學(xué)生表中,學(xué)生編號為“121032101”的學(xué)生記錄與學(xué)生編號為“121032102”的學(xué)生記錄次序可以交換,學(xué)生編號和姓名兩列次序可以交換,均不會影響學(xué)生的信息。

表1.1給出了關(guān)系術(shù)語和一般表格術(shù)語的對比。

表1.1 術(shù)語對比

主站蜘蛛池模板: 临猗县| 石家庄市| 简阳市| 磴口县| 丁青县| 平潭县| 福清市| 鄂托克前旗| 法库县| 聂拉木县| 西平县| 安图县| 垣曲县| 雷州市| 浦江县| 湄潭县| 湖口县| 千阳县| 无棣县| 富平县| 克拉玛依市| 黎城县| 德化县| 仲巴县| 宣恩县| 崇义县| 漳州市| 长宁县| 兰西县| 恩平市| 葫芦岛市| 余姚市| 教育| 海丰县| 柳河县| 丽水市| 平阴县| 镇沅| 霍城县| 宝鸡市| 满洲里市|