2-4 關聯式資料庫簡介
2-4-1 關聯就是表格 關聯式資料庫模型將所有物件都以一個關聯來表式,每一關聯由若干個屬性來描述它。到底需多少個屬性是依環境的需求而定,並沒一定規則。關聯表如下圖所示,相關名詞如下:
圖 2-4 關聯式資料庫之關聯表(表格)
**** 何謂關聯式資料庫:***** 1. 是利用若干個資料表所構成的資料庫。 2. 資料表之間都必須有關聯(或稱關係連結)。 3. 沒有和其他資料表產生關聯的資料表是多餘的。 2-4-2 資料表的特性 當我們設計資料表之前,應該先了解它得特性如何:
2-4-3 欄位的限制 為了滿足上述的資料表的特性,對於資料表內欄位的規劃就需要某些限制,針對欄位的特質,有下列定義: (A)主鍵(Primary Key) 雖然我們要求資料表內紀錄不可以重複,但許多情況下還是會重複,譬如,學生資料表內可能出現相同姓名、相同性別、相同地址、等等情況導致紀錄重複。因此為了不讓資料有重複現象,必須找到一個欄位,它的內容能讓每一筆資料都不相同。譬如,學生資料表內找到『學號』,它是不可能重複的,我們就選定它當『主鍵』。 如果在某一個資料表內找不到一個欄位是不可能重複的,也許我們可以組合 2 或 3 個欄位組合當主鍵。譬如選課總表,則選用『學號』與『開課代碼』兩個欄位的組合當為主鍵,我們還限制每位學生不可以選修兩次相同的課程。 (B) 候補鍵(Candidate Keys) 『候補鍵』表示具有被選為主鍵特質的欄位,可能是一個或若干欄位的組合。主鍵表示可以辨識各筆資料之間的不同。譬如學生資料表{學號、姓名、班級代碼、性別、電話、電子郵件、地址}內有資格當主鍵有{學號},{學號、姓名},{學號、班級代碼}…, 這些具有主鍵的特質。候補鍵須找出他們之間最小的集合,當然就是 {學號},就取它來當主鍵。如果多了『身分證號』欄位,它也具有主鍵功能也是候補鍵之一。因此主鍵具有下列兩條件:
(C) 替代鍵(Alternative Key) 具有主鍵功能而未選上者稱之,它具有替代主鍵的特質。假設學生資料中 {學號}與{身分證號}都具有候補鍵的特質,我們選擇了{學號}當主鍵,則{身分證號}就是替代鍵。 (D)外來鍵(Foreign Key) 該欄位與其它表格的主鍵關聯稱之。外來鍵是表格之間連繫的主要管道,如下圖所示。譬如,學生是屬於哪一個班是利用該學生資料的『班級代碼』對應到班級資料表的『班級代碼』欄位,找到他所屬班級的相關資料(班級名稱、系別代碼與入學年度),接著『系別代碼』也是外來鍵,它對應系別資料表的主鍵,可透過此聯繫找到該班是屬於哪一系所有。
圖 2-5 表格之間的關聯性 |
翻轉工作室:粘添壽
資料庫系統概論(含邏輯設計) 翻轉電子書系列:
|