Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.
新增或變更資料表的主索引鍵

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

若要設定資料表的主索引鍵,請在 [設計檢視] 中開啟資料表。 選取要使用的欄位,然後在功能區按一下 [主索引鍵]。

附註:  本文專用於 Access 桌面資料庫。 Access 會自動管理 Access Web 應用程式和 Web 資料庫中新資料表的主索引鍵。 雖然您可以覆寫這些自動主索引鍵,但我們不建議您這麼做。

本文內容

Access 中主索引鍵的概觀

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

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

1. 主索引鍵

2. 外部索引鍵

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

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

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

什麼是理想的主索引鍵?

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

  • 可以唯一識別每一個資料列

  • 它絕不會是空白或 Null,一定含有值

  • 所包含的值極少變更 (最好是永不變更)

如果您無法找出良好的索引鍵,請建立 [自動編號] 類型的欄位當做索引鍵。 [自動編號] 類型的欄位會在每筆記錄第一次儲存時自動其身產生一個值。 因此,[自動編號] 類型的欄位符合理想主索引鍵的三個特性。 如需新增 [自動編號] 欄位的詳細資訊,請參閱新增 [自動編號] 欄位做為主索引鍵一文。

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

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

不理想主索引鍵的範例

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

不理想的主索引鍵

原因

個人姓名

可能並非絕對的唯一資訊,且可能變更

電話號碼

可能會變更。

電子郵件地址

可能會變更。

郵遞區號

可能有很多人都有同樣的郵遞區號

結合事實和數字

事實部分可能會變更,造成維護上的負擔。 如果事實部分在其他欄位重複,可能會導致混淆。 例如,如果城市也儲存為一個欄位,合併城市和遞增數字 (例如 NEWYORK0579) 就不是好選擇。

社會安全號碼

  • 私人資訊,禁用於政府部門及部分組織。

  • 有些人沒有 SSN

  • 一生中可能擁有一個以上

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

在有些情況下,您希望將資料表中兩個或多個欄位做為主索引鍵。 例如,儲存訂單明細項目的「訂單詳細資料」資料表可能在它的主索引鍵中使用兩個欄位:「訂單識別碼」與「產品識別碼」。 具有一個以上欄位的索引鍵就稱為「複合索引鍵」。

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

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

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

  2. 在 [瀏覽窗格] 中,以滑鼠右鍵按一下要設定主索引鍵的資料表,然後按一下捷徑功能表上的 [設計檢視]。

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

  3. 選取要用來當做主索引鍵的一或多個欄位。

    若要選取一個欄位,請按一下所要欄位的資料列選取器。

    若要選取多個欄位來建立複合索引鍵,請按住 CTRL,然後按一下各欄位的資料列選取器。

  4. 在 [ 數據表設計] 索引 標籤的 [ 工具] 群組中,按兩下 [ 主鍵]

    設計索引標籤上的工具群組

    您指定做為主索引鍵的欄位左側會新增索引鍵指示器。

移除 Access 中的主索引鍵

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

移除主索引鍵不會從資料表刪除該欄位,但會移除主索引鍵的索引。

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

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

    1. 如果涉及資料表關聯的資料表為開啟狀態,請將其關閉。 若資料表為開啟狀態,您將無法刪除資料表之間的資料表關聯。

    2. 在 [資料庫工具] 索引標籤上的 [資料庫關聯圖] 群組中,按一下 [資料庫關聯圖]。

      Access 功能區影像

    3. 選取 [新增表格] (在 Access 2013 中 [顯示表格])。

    4. 針對要刪除的資料表關聯,按一下資料表關聯線 (選取時會以粗體顯示),然後按下 DELETE 鍵。

    5. 在 [ 資料庫關聯設計] 索引 標籤上,按兩下 [ 資料庫關聯圖 ] 群組中的 [ 關閉]

  2. 刪除關聯後,在 [瀏覽窗格] 中,以滑鼠右鍵按一下要移除主索引鍵的資料表,然後按一下 [設計檢視]。

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

  3. 按一下目前主索引鍵的資料列選取器。

    如果主索引鍵只包含單一欄位,請按一下該欄位的資料列選取器。

    如果主索引鍵包含多個欄位,請按一下主索引鍵中任意欄位的資料列選取器。

  4. 在 [ 數據表設計] 索引 標籤的 [ 工具] 群組中,按兩下 [ 主鍵]

    索引鍵指示器即會從您先前指定為主索引鍵的一或多個欄位中移除。

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

變更 Access 中的主索引鍵

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

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

  2. 依照<設定主索引鍵>一節的指示,設定主索引鍵。

其他資訊

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

頁面頂端

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×