新增或變更資料表的主索引鍵

套用到
Microsoft 365 Access Access 2024 Access 2021 Access 2019 Access 2016

主索引鍵是具有值的一個欄位或一組欄位,這些值在整個資料表中都是唯一值。 你可以用鍵值來參考整個紀錄,因為每個記錄的鍵值都不同。 每個資料表只能有一個主索引鍵。 Access 可以在建立資料表時自動建立主鍵欄位,或者你也可以指定想用作主鍵的欄位。 本文將說明如何使用主索引鍵及其使用原因。

要設定資料表的主鍵,請在設計檢視中開啟該資料表。 選擇你想使用的欄位 (或) 欄位,然後在功能區上選擇 主鍵

本文內容

Access 中主索引鍵的概觀

Access 使用主索引鍵欄位快速地關聯多個資料表中的資料,並以有意義的方式將其合併。 您可以在其他資料表中包含主索引鍵欄位,以便參照回主索引鍵的來源資料表。 在其他資料表中,這些欄位稱為外部索引鍵。 例如,[客戶] 資料表中的 [客戶識別碼] 欄位可能也會出現在 [訂單] 資料表。 在 [客戶] 資料表中,該欄位為主索引鍵。 在 [訂單] 資料表中,則稱為外部索引鍵。 簡單來說,外部索引鍵就是另一個資料表的主索引鍵。 如需詳細資訊,請參閱資料庫設計的基本概念

顯示兩個 Access 資料工作表之間的主索引鍵和外部索引鍵

1. 主索引鍵

2. 外部索引鍵

如果你要把現有資料移到資料庫,可能已經有一個欄位可以當作主鍵。 識別碼或序號或代碼等唯一識別碼,通常可做為資料表中的主索引鍵。 例如,您可能有一個 [客戶] 資料表,資料表中的每一個客戶都有一個唯一的客戶識別碼編號。 該客戶識別碼欄位即為主索引鍵。

Access 會自動建立主索引鍵的索引,以便加快查詢和其他操作的速度。 Access 還會確保每筆記錄的主索引鍵欄位中都具有值,且是唯一的值。

在 [資料工作表檢視] 中建立新的資料表時,Access 會自動建立主索引鍵,並為其指派 "識別碼" 欄位名稱及 [自動編號] 資料類型。

什麼是理想的主索引鍵?

要做為主索引鍵,最好具備下列特徵:

  • 它能唯一識別每一列。
  • 它從來不是空的或空的——它總是包含一個值。
  • 它所包含的數值很少理想地 (,也從未) 改變。

如果找不到合適的鑰匙,可以建立一個自動編號欄位作為鑰匙。 [自動編號] 類型的欄位會在每筆記錄第一次儲存時自動其身產生一個值。 因此,[自動編號] 類型的欄位符合理想主索引鍵的三個特性。 欲了解更多關於新增自動號碼欄位的資訊,請參閱 新增自動號碼欄位作為主鍵

在 Access 資料表 [設計檢視] 中自動編號主索引鍵標示為識別碼

[自動編號] 類型的欄位很適合當做主索引鍵。

不理想主索引鍵的範例

缺乏一或多項上述主索引鍵特性的任何欄位,都不是主索引鍵的理想選擇。 以下是一些欄位的範例,說明哪些欄位對「連絡人」資料表來說是不理想的主索引鍵,並說明不適當的理由。

不理想的主索引鍵 原因
個人姓名 可能並非絕對的唯一資訊,且可能變更
電話號碼 可能會變更。
電子郵件地址 可能會變更。
郵遞區號 可能有很多人都有同樣的郵遞區號
結合事實和數字 事實部分可能會變更,造成維護上的負擔。 如果事實部分在其他欄位重複,可能會導致混淆。 例如,如果城市也儲存為一個欄位,合併城市和遞增數字 (例如 NEWYORK0579) 就不是好選擇。
社會安全號碼
  • 私人資訊,禁用於政府部門及部分組織。
  • 有些人沒有社會安全號碼
  • 一生中可能擁有一個以上

複合式索引鍵:使用多個欄位組合為主索引鍵

有時候,你會想在表格中使用兩個或以上欄位作為主鍵。 例如,儲存訂單明細項目的「訂單詳細資料」資料表可能在它的主索引鍵中使用兩個欄位:「訂單識別碼」與「產品識別碼」。 具有一個以上欄位的索引鍵就稱為「複合索引鍵」。

使用 Access 已經有的欄位設定主索引鍵

為了能讓主索引鍵運作正常,此欄位必須能唯一識別每個資料列,同時不含空白或 Null 值,也極少變更 (最好是永不變更)。 若要設定主索引鍵:

  1. 開啟要修改的資料庫。

  2. 在導航面板中,右鍵點選你想設定主鍵的表格,然後在快捷鍵選單中選擇 「設計檢視」。

    秘訣

    如果沒看到 [瀏覽窗格],請按下 F11 以顯示該窗格。

  3. 選取要用來當做主索引鍵的一或多個欄位。
    要選擇一個欄位,請選擇你想要欄位的列選擇器。
    若要選擇多個欄位來建立複合鍵,按住 CTRL,然後選擇每個欄位的列選擇器。

  4. 表格設計 標籤中, 工具群組中 選擇 主鍵
    設計索引標籤上的工具群組
    您指定做為主索引鍵的欄位左側會新增索引鍵指示器。

移除 Access 中的主索引鍵

移除主索引鍵後,原先做為主索引鍵的欄位將不再是識別記錄的主要方式。

移除主鍵不會刪除表格中的欄位,但會移除為主鍵建立的索引。

  1. 在移除主索引鍵之前,必須先確定該索引鍵不涉入任何資料表關聯。 若嘗試移除的主索引鍵是一或多項關聯的一部分,Access 會提出警告,要求您先刪除關聯。

    若要刪除資料表關聯,請完成下列步驟:

    1. 如果涉及資料表關聯的資料表為開啟狀態,請將其關閉。 若資料表為開啟狀態,您將無法刪除資料表之間的資料表關聯。
    2. 資料庫工具標籤中,關係群組中選擇關係。
      Access 功能區影像
    3. 選擇 新增資料表。
    4. 選擇你想刪除的表格關係的表格關聯行,) (當選取該行時該行會變粗,然後按下 DELETE 鍵。
    5. 在關係 設計 標籤中, 關係群組中 ,點擊 關閉
  2. 刪除關聯式後,在導航窗格中,右鍵點擊你想移除主鍵的資料表,然後選擇 設計檢視

    秘訣

    如果沒看到 [瀏覽窗格],請按下 F11 以顯示該窗格。

  3. 選擇當前主鍵的列選擇器。
    如果主鍵只包含一個欄位,請選擇該欄位的列選擇器。
    如果主鍵包含多個欄位,請選擇主鍵中任一欄位的列選擇器。

  4. 表格設計 標籤中, 工具群組中 選擇 主鍵
    索引鍵指示器即會從您先前指定為主索引鍵的一或多個欄位中移除。

注意

儲存新資料表時,如果沒有設定主索引鍵,Access 會提示您建立主索引鍵。 若選擇 [是],Access 就會建立 [自動編號] 資料類型的 [識別碼] 欄位,為每筆記錄提供唯一值。 若資料表已經包含 [自動編號] 類型的欄位,Access 便會使用該欄位做為主索引鍵。

變更 Access 中的主索引鍵

若要變更資料表的主索引鍵,您可以執行下列步驟:

  1. 依照<移除主索引鍵>一節的指示,移除現有的主索引鍵。
  2. 依照<設定主索引鍵>一節的指示,設定主索引鍵。

其他資訊

如需資料庫設計及選擇適當主索引鍵的詳細資訊,請參閱下列文章:

頁面頂端