2010年10月12日 星期二

第9張 關聯式資料庫基本知識

9-1認識Access關聯式資料庫
Access是一個關聯式資料庫,所謂"關聯"是只藉由表格的行是找出資料的方法。

要建立資料表間的關聯必須經由二個資料表中相同意義、相同資料類型的欄位來實現。

在Excel中,我們無法建立"試算表之間的關聯性"。

搶答時間:SQL ServerMS SQLMY SQLORACLE

9-2認識關聯、主鍵與連外鍵
分割資料表並建立關連的優點有:

節省儲存空間:有作者和分類的資料比欄位,作者資料表,相同作者只需建立一次,分類資料表每種類型也只需紀錄一次,這樣當書籍資料表使用到這些作者與分類時,即可經由關連選取。

減少輸入錯誤:若將資料打錯,或者漏打時,搜尋時查不到。若是使用關聯式資料庫,則該欄的資料實際是來自資料表,只要確認資料表中的紀錄是正確的,就不需要重覆輸入減少錯誤機會。

方便資料修改:若沒建立關連的資料表,當要修改作者欄位必須每一位都修改,而有建立的話,只需將作者資料表修改就好。

資料表之間是由"鍵"來建立彼此的關聯,可為資料表設定為主鍵或連外鍵。

主鍵:主鍵是用來辨識紀錄的欄位,具有唯一性,且不允許重複。
通常每一資料表只有一個欄位設為主鍵,但有時可能沒有一個欄位具有唯一性,可考慮使用2個或多個欄位組合起來做為主鍵。

連外鍵:是用來連結其他資料表用,連外鍵中資料可重複。如果甲資料表中某個欄位必須對照乙資料表的主鍵,才使該欄位的值變得有意義,則稱該欄位為甲資料表的連外鍵。

搶答時間:主鍵(Primary Key):用來辨識紀錄的欄位,具唯一性,不允許重複。
                    連外鍵(Foreign Key):用來連結其他資料表之用、可重複



9-3資料的完整性
資料完整性就是用來確保資料庫中資料的正確性及可靠性。

分為幾種類型:

實體完整性:為了確保資料表中的紀錄是"唯一"的。我們設定主鍵就是為了達成實體完整性。

區域完整性:是為了確保資料在允許範圍中。例如限制每一個整數值欄位的資料範圍在100~999之間,若輸入資料不在此範圍,即不符合會被access拒絕。

參考完整性:是用來確保相關資料表尖的資料一致,避免因一個資料表的紀錄改變,而造成另一個資料表的內容變成無效值。

使用者定義的完整性:由使用者自行定義,而又不屬於前面三種的完整性。

搶答時間:為了確保資料表中的紀錄是唯一的。

9-4資料表的關聯種類

一對一關聯:甲資料表中的一筆紀錄,只能對應到乙資料表中的一筆記錄。

一對多:甲資料表中的一筆紀錄可對應到乙資料表中的多筆記錄;乙資料表中的一筆記錄只能對應到甲資料表中的一筆記錄。

多對多:甲資料表的一筆記錄能夠對應到乙資料表中的多筆記錄;乙資料表中的一筆記錄也能對應到甲資料表中的多筆記錄。

資料庫處理多對多關聯時,彼此間的關係太複雜,如易發生問題,通常將兩個資料表重新設計,或是在這兩個資料表間加上一個資料表,使的它們成為兩個一對多的關聯。

實力評量
一、選擇題
1關聯式資料庫是使用兩個資料表的共通欄位相互關聯。(1)

2.我們利用連外鍵來建立兩個資料表間的關聯。(2)

3.我們利用主鍵來作為唯一識別該筆記綠的依據。(1)

4.在資料表中設定主鍵可確保資料表的實體完整性。(3)

二、填充題
1資料完整性大致可分為實體完整性、區域完整性、參考完整性、使用者定義的完整性

2.若我們在書籍訂單資料表的單價欄未設定資料的範圍為100到999之間,是為了維護資料的區域完整性。

三、問答題
1.一對一關聯:甲資料表中的一筆紀錄,只能對應到乙資料表中的一筆記錄。

一對多:甲資料表中的一筆紀錄可對應到乙資料表中的多筆記錄;乙資料表中的一筆記錄只能對應到甲資料表中的一筆記錄。

多對多:甲資料表的一筆記錄能夠對應到乙資料表中的多筆記錄;乙資料表中的一筆記錄也能對應到甲資料表中的多筆記錄。

2.
節省儲存空間:有作者和分類的資料比欄位,作者資料表,相同作者只需建立一次,分類資料表每種類型也只需紀錄一次,這樣當書籍資料表使用到這些作者與分類時,即可經由關連選取。

減少輸入錯誤:若將資料打錯,或者漏打時,搜尋時查不到。若是使用關聯式資料庫,則該欄的資料實際是來自資料表,只要確認資料表中的紀錄是正確的,就不需要重覆輸入減少錯誤機會。

方便資料修改:若沒建立關連的資料表,當要修改作者欄位必須每一位都修改,而有建立的話,只需將作者資料表修改就好。

3.參考完整性:是用來確保相關資料表間的資料一致,避免因一個資料表的紀錄改變,而造成另一個資料表的內容變成無效值。

沒有留言:

張貼留言