久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

表關(guān)系指南

 GTY_TSG 2021-05-15

之所以需要良好的數(shù)據(jù)庫設(shè)計,目標(biāo)之一就是為了消除數(shù)據(jù)冗余(重復(fù)數(shù)據(jù)),。 為了實(shí)現(xiàn)該目標(biāo),,可將數(shù)據(jù)拆分為多個基于主題的表,以使每個數(shù)據(jù)只顯示一次,。 然后,,通過在相關(guān)表中放置公共字段來為 Access 提供將拆分的信息組合到一起 的方法。 但是,,若要正確執(zhí)行該步驟,,必須了解表之間的關(guān)系,然后在數(shù)據(jù)庫中指定這些關(guān)系。

本文內(nèi)容

簡介

在數(shù)據(jù)庫中為每個主題創(chuàng)建一個表后,必須為 Access 提供在需要時將這些信息重新組合到一起的方法,。 具體方法是在相關(guān)的表中放置公共字段,,并定義表之間的關(guān)系。 然后,,可以創(chuàng)建查詢,、窗體和報表,以同時顯示幾個表中的信息,。 例如,,下面顯示的窗體包含來自幾個表的信息:

同時顯示來自五個表的相關(guān)信息的“訂單”窗體

1. 此窗體中的信息來自“客戶”表...

2. ...“訂單”表...

3. ...“產(chǎn)品”表...

4. ...和“訂單明細(xì)”表。

“受票方”框中的客戶名稱是從“客戶”表中檢索到的,,“訂單 ID”和“訂單日期”值來自“訂單”表,,“產(chǎn)品名稱”來自“產(chǎn)品”表,“單價”和“數(shù)量”值來自“訂單明細(xì)”表,。 這些表以多種方式互相鏈接在一起,,以便將各自的信息呈現(xiàn)到窗體中。

在上述示例中,,表中的各個字段必須互相協(xié)調(diào),,這樣它們才能顯示有關(guān)相同訂單的信息。 這種協(xié)調(diào)是使用表之間的關(guān)系來實(shí)現(xiàn)的,。 表關(guān)系是通過匹配鍵字段中的數(shù)據(jù)來運(yùn)作的 ,,鍵字段通常是兩個表中使用相同名稱的字段。 在大多數(shù)情況下,,這些匹配字段是其中一個表的主鍵(它為每條記錄提供唯一標(biāo)識符),,并且是另一個表的外鍵。 例如,,通過在“員工”和“訂單”表的“員工 ID”字段之間創(chuàng)建表關(guān)系,,可以將員工和他們負(fù)責(zé)的訂單相關(guān)聯(lián)。

“員工 ID”在“員工”表中用作主鍵,,在“訂單”表中用作外鍵,。

1. “員工 ID”出現(xiàn)在兩個表 中,一個是主鍵...

2. ...一個是外鍵,。

返回頁首

表關(guān)系的類型

Access 中有三種類型的表關(guān)系,。

  • 一對多關(guān)系

    我們使用包含“客戶”表和“訂單”表的訂單跟蹤數(shù)據(jù)庫作為示例。 客戶可以下任意數(shù)量的訂單,。 因此,,對于“客戶”表中表示的任何客戶,,相應(yīng)“訂單”表中可能會有許多訂單。 “客戶”表和“訂單”表之間的關(guān)系是一對多關(guān)系,。

    為了在數(shù)據(jù)庫設(shè)計中表示一對多關(guān)系,,請獲取關(guān)系“一”方的主鍵,并將其作為附加的一個或多個字段添加到關(guān)系“多”方的表中,。 例如在本例中,,可將一個新字段 (即“客戶”表中的 ID 字段) 添加到“訂單”表中,并將其命名為“客戶 ID”,。 Access 隨后即可使用“訂單”表中的“客戶 ID”號來查找每個訂單的正確客戶,。

  • 多對多關(guān)系

    現(xiàn)在,,我們來看一下“產(chǎn)品”表和“訂單”表之間的關(guān)系,。 單個訂單中可以包含多個產(chǎn)品。 另一方面,,一個產(chǎn)品可能出現(xiàn)在多個訂單中,。 因此,對于“訂單”表中的每條記錄,,都可能與“產(chǎn)品”表中的多條記錄對應(yīng),。 此外,對于“產(chǎn)品”表中的每條記錄,,都可以與“訂單”表中的多條記錄對應(yīng),。 此關(guān)系稱為多對多關(guān)系。 請注意,,為了檢測到表之間的現(xiàn)有多對多關(guān)系,,務(wù)必考慮關(guān)系的雙方。

    要表示多對多關(guān)系,,您必須創(chuàng)建第三個表,,該表通常稱為聯(lián)接表,它將多對多關(guān)系劃分為兩個一對多關(guān)系,。 將這兩個表的主鍵都插入到第三個表中,。 因此,第三個表記錄關(guān)系的每個匹配項或?qū)嵗?例如,,“訂單”表和“產(chǎn)品”表有一種多對多的關(guān)系,,這種關(guān)系是通過與“訂單明細(xì)”表建立兩個一對多關(guān)系來定義的。 一個訂單可以有多個產(chǎn)品,,每個產(chǎn)品可以出現(xiàn)在多個訂單中,。

  • 一對一關(guān)系

    在一對一關(guān)系中,第一個表中的每條記錄在第二個表中只有一個匹配記錄,,而第二個表中的每條記錄在第一個表中只有一個匹配記錄,。 這種關(guān)系并不常見,因為通常以此方式相關(guān)的信息都存儲在同一個表中。 可以使用一對一關(guān)系將一個表分成許多字段,,或出于安全原因隔離表中的部分?jǐn)?shù)據(jù),,或存儲僅應(yīng)用于主表的子集的信息。 標(biāo)識此類關(guān)系時,,這兩個表必須共享一個公共字段,。

返回頁首

為什么創(chuàng)建表關(guān)系?

您可以使用“關(guān)系”窗口或從“字段列表”窗格中拖動字段來顯式創(chuàng)建表關(guān)系,。 當(dāng)需要在數(shù)據(jù)庫對象中使用表時,, Access 會使用表關(guān)系來確定如何聯(lián)接這些表。 應(yīng)該在創(chuàng)建其他數(shù)據(jù)庫對象(如窗體,、查詢和報表)之前創(chuàng)建表關(guān)系,,這樣做有以下幾個原因:

  • 表關(guān)系可為查詢設(shè)計提供信息

    若要使用多個表中的記錄,通常必須創(chuàng)建聯(lián)接這些表的查詢,。 查詢的工作方式為將第一個表主鍵字段中的值與第二個表的外鍵字段進(jìn)行匹配,。 例如,若要返回列出每個客戶所有訂單的行,,您需要構(gòu)建一個查詢,,該查詢基于“客戶 ID”字段將“客戶”表與“訂單”表聯(lián)接起來。 在“關(guān)系”窗口中,,可以手動指定要聯(lián)接的字段,。 但是,如果已經(jīng)定義了表間的關(guān)系,,Access 會基于現(xiàn)有表關(guān)系提供默認(rèn)聯(lián)接,。 此外,如果使用其中一個查詢向?qū)?,Access 會使用從已定義的表關(guān)系中收集的信息為您提供可能的選擇,,并用適當(dāng)?shù)哪J(rèn)值預(yù)填充屬性設(shè)置。

  • 表關(guān)系可為窗體和報表設(shè)計提供信息

    在設(shè)計窗體或報表時,,Access 會使用從已定義的表關(guān)系中收集的信息為您提供可能的選擇,,并用適當(dāng)?shù)哪J(rèn)值預(yù)填充屬性設(shè)置。

  • 可以將表關(guān)系作為基礎(chǔ)來實(shí)施參照完整性,,這樣有助于防止數(shù)據(jù)庫中出現(xiàn)孤立記錄,。 孤立記錄指的是這樣的一些記錄:它所參照的其他記錄根本不存在, 例如參照不存在的客戶記錄的訂單記錄,。

    在設(shè)計數(shù)據(jù)庫時,,您將信息拆分為表,每個表都有一個主鍵,。 然后,,您向相關(guān)表中添加參照這些主鍵的外鍵,。 這些外鍵-主鍵對構(gòu)成了表關(guān)系和多表查詢的基礎(chǔ)。 這些外鍵-主鍵參照保持同步非常重要,。 參照完整性依賴于表關(guān)系,,有助于確保參照保持同步。

返回頁首

了解參照完整性

在設(shè)計數(shù)據(jù)庫時,,您將數(shù)據(jù)庫信息拆分為許多基于主題的表,,以最大限度地降低數(shù)據(jù)冗余。 然后,,您通過在相關(guān)表中放置公共字段來為 Access 提供將數(shù)據(jù)重新組合到一起的方法,。 例如,為表示一對多關(guān)系,,您從“一方”表中獲得主鍵,,將其作為附加字段添加到“多方”表。 若要將數(shù)據(jù)重新組合到一起,,Access 獲得“多方”表中的值,,并在“一方”表中查找相應(yīng)的值。 通過這種方法,,“多方”表中的值參照“一方”表中相應(yīng)的值。

假設(shè)“運(yùn)貨商”和“訂單”之間存在一對多關(guān)系,,您希望刪除一個運(yùn)貨商,。 如果要刪除的運(yùn)貨商在“訂單”表中具有訂單,則刪除該運(yùn)貨商記錄后,,這些訂單將成為“孤立記錄”,。 這些訂單仍然包含運(yùn)貨商 ID,但該 ID 不再有效,,因為它所參照的記錄不再存在,。

參照完整性的目的是防止出現(xiàn)孤立記錄并使參照保持同步,以使這種假設(shè)的情況永遠(yuǎn)不會發(fā)生,。

實(shí)施參照完整性的方法是為表關(guān)系啟用參照完整性,。 實(shí)施后,Access 將拒絕違反此表關(guān)系參照完整性的任何操作,。 這意味著 Access 會拒絕更改參照目標(biāo)的更新操作,,也會拒絕刪除參照目標(biāo)的刪除操作。 您可能確實(shí)需要更改某個運(yùn)貨商的主鍵,,而該運(yùn)貨商在“訂單”表中有訂單,。 在此類情況下,您真正需要的是 Access 在一次操作中自動更新所有受影響的行,。 這樣,,Access 可以確保進(jìn)行完整更新,,以便數(shù)據(jù)庫不會出現(xiàn)不一致的狀態(tài)(即更新某些行,不更新其他行),。 因此,,Access 支持“級聯(lián)更新相關(guān)字段”選項。 如果您實(shí)施了參照完整性并選擇“級聯(lián)更新相關(guān)字段”選項,,在您更新主鍵時,,Access 將自動更新參照主鍵的所有字段。

您可能還會需要刪除某一行及所有相關(guān)記錄,, 例如,,某個運(yùn)貨商記錄以及其所有相關(guān)訂單。 因此,,Access 支持“級聯(lián)刪除相關(guān)記錄”選項,。 如果實(shí)施了參照完整性并選擇“級聯(lián)刪除相關(guān)記錄”選項,則當(dāng)您刪除關(guān)系主鍵方的記錄時,,Access 會自動刪除參照該主鍵的所有記錄,。

返回頁首

查看表關(guān)系

要查看表關(guān)系,請單擊“數(shù)據(jù)庫工具”選項卡上的“關(guān)系”,。 將打開“關(guān)系”窗口,,并顯示所有現(xiàn)存的關(guān)系。 如果尚未定義表關(guān)系,,并且您是第一次打開“關(guān)系”窗口,,則 Access 會提示您向窗口中添加表或查詢。

打開“關(guān)系”窗口

  1. 單擊 '文件',,單擊 '打開',,然后選擇并打開數(shù)據(jù)庫。

  2. “數(shù)據(jù)庫工具”選項卡上的“關(guān)系”組中,,單擊“關(guān)系”,。

  3. 在“設(shè)計”選項卡上的“關(guān)系”組中,單擊“所有關(guān)系”,。

    這將顯示數(shù)據(jù)庫中的所有已定義關(guān)系,。 請注意,除非在“導(dǎo)航選項”對話框中選中了“顯示隱藏對象”復(fù)選框,,否則不會顯示隱藏的表(在表的“屬性”對話框中選中“隱藏”復(fù)選框的表)及其關(guān)系,。

表關(guān)系由“關(guān)系”窗口中表之間繪制的關(guān)系線表示。 不實(shí)施參照完整性的關(guān)系在支持該關(guān)系的公共字段之間顯示為細(xì)線,。 單擊關(guān)系線選擇關(guān)系時,,該線變粗指示它被選中。 如果對此關(guān)系實(shí)施參照完整性,,則該線在兩端都會變粗,。 此外,,在關(guān)系一側(cè)線條較粗部分上會顯示數(shù)字“1”,而在另一側(cè)線條較粗部分上會顯示無限大符號 (),。

在“關(guān)系”窗口處于活動狀態(tài)時,,可以選擇功能區(qū)中的以下命令:

“設(shè)計”選項卡上的“工具”組中:

  • 編輯關(guān)系 打開“編輯關(guān)系”對話框。 在選擇關(guān)系線時,,可以單擊“編輯關(guān)系”以更改表關(guān)系,。 也可以雙擊關(guān)系線。

  • 清除布局 從“關(guān)系”窗口中刪除所有顯示的表和關(guān)系,。 請注意,,該命令只隱藏這些表和關(guān)系, 而不會刪除它們,。

  • 關(guān)系報表 創(chuàng)建顯示數(shù)據(jù)庫中的表和關(guān)系的報表,。 該報表只顯示“關(guān)系”窗口中未隱藏的表和關(guān)系。

“設(shè)計”選項卡上的“關(guān)系”組中:

  • 添加表 (在表中顯示 Access 2013    允許選擇表以在'關(guān)系'窗口中顯示,。

  • 隱藏表 隱藏“關(guān)系”窗口中的所選表,。

  • 直接關(guān)系 在“關(guān)系”窗口中顯示所選表的所有關(guān)系和相關(guān)表(如果尚未顯示)。

  • 所有關(guān)系 在“關(guān)系”窗口中顯示數(shù)據(jù)庫中所有關(guān)系和相關(guān)表,。 請注意,,除非在“導(dǎo)航選項”對話框中選中“顯示隱藏對象”,否則不會顯示隱藏的表(在表的“屬性”對話框中選中“隱藏”復(fù)選框的表)及其關(guān)系,。

  • 關(guān)閉 關(guān)閉“關(guān)系”窗口,。 如果對“關(guān)系”窗口的布局進(jìn)行了任何更改,則會詢問您是否保存這些更改,。

返回頁首

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多