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

3.4.1 表之間關系類型的確定

表之間的關系有3種類型,即一對一關系、一對多關系和多對多關系。創建哪種類型的關系取決于表之間相關聯的字段是如何定義的。

(1)如果兩個表相關聯字段都是主鍵,則創建一對一關系。在一對一關系中,A表中的一條記錄僅能與B表中的一條記錄相匹配,同樣B表中的一條記錄也只能與A表中的一條記錄相匹配。例如,在“教務管理系統”數據庫中,有“教師”表和“教師工資”表,兩個表中的“工號”都是主鍵,這兩個表是一對一的關系。

(2)如果兩個表僅有一個相關聯字段是主鍵,則創建一對多關系。一對多關系是最常用的關系類型。在一對多關系中,A表中的一條記錄能與B表中的多條記錄相匹配,但是B表中的一條記錄僅能與A表中的一條記錄相匹配。例如,“教師”表與“課程”表都有“工號”字段,但僅有“教師”表中的“工號”是主鍵,“教師”表與“課程”是一對多的關系。

(3)在多對多關系中,A表中的一條記錄能與B表中的多條記錄相匹配,并且B表中的一條記錄也能與 A表中的多條記錄相匹配,這兩個表是多對多的關系。兩個表之間的多對多關系實際上是某兩個表與第三個表的兩個一對多關系。第三個表的字段包含前兩個表的主鍵。例如,“學生”表與“課程”表是多對多關系,“修課成績”表把“學生”表與“課程”表之間的多對多關系轉化為兩個一對多關系,即“學生”表與“修課成績”表是一對多關系(兩個表相關聯字段是“學號”),“課程”表與“修課成績”表也是一對多關系(兩個表相關聯字段是“課程編號”)。

在定義表之間的關系時,應設立一些準則,這些準則有助于數據的完整性。參照完整性就是在輸入或刪除記錄時,為維護表之間已定義的關系而必須遵循的規則。如果實施了參照完整性,那么當主表中沒有相關記錄時,就不能將記錄添加到相關表中,也不能在相關表中存在匹配的記錄時,刪除主表中的記錄,更不能在相關表中有相關記錄時,更改主表中的主關鍵字值。也就是說,實施了參照完整性之后,對表中主關鍵字的字段進行操作時系統會自動檢查主關鍵字的字段,看一看該字段是否被添加、修改或刪除。如果對主關鍵字的修改違背了參照完整性的要求,那么系統將會自動強制執行參照完整性。

注意:

(1)當創建表之間的關系時,相關聯的字段不一定要有相同的名稱,但必須有相同的數據類型(除主鍵是“自動編號”數據類型外)。

(2)當主鍵字段是“自動編號”數據類型時,可以與“數字”數據類型并且“字段大小”屬性為“長整型”的字段關聯。

(3)如果分別來自兩個表的兩個字段都是“數字”字段,只有“字段大小”屬性相同,這兩個字段才可以關聯。

主站蜘蛛池模板: 余干县| 缙云县| 广西| 洪湖市| 恭城| 嘉兴市| 公安县| 四会市| 巫溪县| 沙河市| 扬州市| 伊春市| 锡林浩特市| 丹江口市| 堆龙德庆县| 江城| 巨鹿县| 武山县| 乌什县| 道孚县| 浏阳市| 五河县| 沿河| 常山县| 宜兰市| 东源县| 孙吴县| 汾西县| 安塞县| 商丘市| 辽阳县| 玛曲县| 利川市| 高淳县| 兴业县| 资源县| 凤山市| 万载县| 西昌市| 昔阳县| 黔南|