附註: 我們想要以您的語言,用最快的速度為您提供最新的說明內容。本頁面是經由自動翻譯而成,因此文中可能有文法錯誤或不準確之處。讓這些內容對您有所幫助是我們的目的。希望您能在本頁底部告訴我們這項資訊是否有幫助。此為英文文章出處,以供參考。
重要 Microsoft 不再建議您於 SharePoint 中建立和使用 Access Web App。請考慮改用 Microsoft PowerApps,來建置適用於網頁和行動裝置的無程式碼商務解決方案。 |
當您使用查詢來提供資料的 Access web app 中檢視時,您可能會希望能編輯某些欄位是唯讀的檢視中。明確地說,如果您使用一個以上的表格有一個以上的連接,有一些的限制可更新查詢欄位。
附註: 本主題是關於 Access web 應用程式。它不會套用到桌面資料庫。如果您有桌面資料庫中無法使用查詢,請參閱查詢簡介的概觀。
可更新查詢欄位的要求
-
唯有資料表中的聯結欄位沒有唯一值 (即「最多-多數」資料表),其欄位才可以更新。
-
查詢輸出必須包含「最多-多數」資料表的主索引鍵欄位。
-
「最多-多數」資料表必須位於任何外部聯結的內部端 (亦即,左外部聯結的左側或右外部聯結的右側)。
在這個查詢中,[工作] 資料表是「最多-多數」資料表,因為會查閱 [專案] 資料表中的資料。
不過,因為輸出中不包含 [工作] 的主索引鍵,因此其欄位皆不可更新。
即使新增索引鍵,來自 [專案] 資料表的欄位也沒有一個可以更新,因為該資料表不是「最多-多數」資料表。
尋找和修正可更新欄位的問題
欄位無法更新的原因決定了啟用更新的方式。若要找出原因,請在 [設計檢視] 中開啟查詢,並查看查詢設計詳細資料。
-
如果您從瀏覽器開始,請在 Access 中開啟 web 應用程式: 在應用程式的右上角,按一下 [設定> [在 Access 中自訂。
-
在 Access 中,如果 [功能窗格] 未開啟,請按下 F11 顯示。在 [功能窗格] 中,以滑鼠右鍵按一下查詢,然後按一下 [設計檢視]。
-
判斷查詢中的哪個資料表是「最多-多數」資料表。基本原則是,會查閱其他資料表資料的就是「最多-多數」資料表。
-
檢查您要更新的欄位確實位在「最多-多數」資料表。如果不是,就無法對查詢執行任何動作來因應問題。若要讓其他人編輯該欄位,替代方法是考慮只根據資料表建立可更新的新檢視,並使其能視需要輕鬆開啟。例如,您可以提供一個按鈕並包含可開啟檢視的巨集。
-
檢查查詢輸出中會包含 [最多-多數資料表的主索引鍵。如果有,不新增至查詢輸出的主索引鍵。
-
按兩下每個聯結並確認:
-
聯結是內部聯結;或者,
-
如果是外部聯結,「最多-多數」資料表是位在聯結的內部端 (左聯結的左側或右聯結的右側)。
-
如果聯結不符合上述兩個準則的至少其中一個,請變更聯結使查詢可以更新。
新增「最多-多數」主索引鍵至查詢輸出
-
在 [設計檢視] 中開啟查詢。
-
識別「最多-多數」資料表。
-
按兩下主索引鍵中的每一個欄位。每個索引鍵欄位都會以一個小鑰匙標示。
-
在查詢設計格線中,確定您剛才新增的索引鍵欄位有選取 [顯示] 方塊:
變更聯結使查詢可以更新
如果任何聯結不符合上述準則的其中一個,它會防止更新。以下是不可更新連接的範例:
這是左外部聯結,包含左資料表的所有內容及右資料表的相對應記錄。不過,「最多-多數」資料表是位在聯結的右側,因此會阻止更新。
使外部聯結可更新的方式
有三種基本方式可以調整聯結,使其查詢可以更新。按兩下聯結以開啟 [連接屬性] 對話方塊,然後執行下列其中一個動作:
-
變更為內部聯結的外部聯結 按一下 [中的] 選項 1 連接屬性] 對話方塊。
-
切換資料表位置 內部聯結和其他表格 (使用下拉式方塊中加入內容] 對話方塊來設定向左鍵和向資料表名稱) 的外側邊的側移動最多-多數資料表。
-
變更聯結方向 :在 [連接屬性] 對話方塊中按一下選項 2 或 3 (從先前的值變更為其他值)。