我正在創建一個訪問資料庫,以跟蹤來自美國 50 個州的 2021 年資料收尾狀態。我已將各州(阿拉巴馬州到懷俄明州)設為主鍵。我還為相應的表格創建了表格以便于訪問,因為我希望能夠查看表格中的狀態資料,而無需查看表格,這更混亂且更容易出錯。
我的問題是:是否可以設定資料庫(對于表格和表單)以便不能添加額外的記錄(我只想要 50 個狀態),但也不能洗掉任何記錄?我希望能夠自己輸入和更新記錄,但我不希望任何狀態記錄消失、重命名或添加其他記錄。
uj5u.com熱心網友回復:
您還可以使用 MsAccess 資料驅動宏;在 Datasheet 視圖中,使用 Table 組,然后單擊“BeforeChange”,然后將步驟添加到宏:

此示例防止“插入”。
當然不是堅如磐石;用戶可以洗掉宏,然后繼續插入。 適用于 MsAccess 資料驅動宏的 Microsoft Doco
uj5u.com熱心網友回復:
第一個答案中的資料宏將防止洗掉。
包含 50 個狀態的 ValidationRule 將阻止添加記錄和更改狀態名稱。
狀態欄位還必須具有以下屬性:
- 必需=是
- AllowZeroLength=否
- 以“是(無重復)”為索引。
- State 欄位的 ValidationRule 見下文
在(“阿拉巴馬”、“阿拉斯加”、“亞利桑那”、“阿肯色”、“加利福尼亞”、“科羅拉多”、“康涅狄格”、“特拉華”、“佛羅里達”、“喬治亞”、“愛達荷”、“夏威夷”、 “伊利諾伊”、“印第安納”、“愛荷華”、“堪薩斯”、“肯塔基”、“路易斯安那”、“緬因”、“馬里蘭”、“馬薩諸塞”、“密歇根”、“明尼蘇達”、“密西西比”、“密蘇里” ”、“蒙大拿州”、“內布拉斯加州”、“內華達州”、“新罕布什爾州”、“新澤西州”、“新墨西哥州”、“紐約州”、“北卡羅來納州”、“北達科他州”、“俄亥俄州”、“俄克拉荷馬州” ", "俄勒岡", "賓夕法尼亞", "羅德島”、“南卡羅來納”、“南達科他”、“田納西”、“德克薩斯”、“猶他”、“佛蒙特”、“弗吉尼亞”、“華盛頓”、“西弗吉尼亞”、“威斯康星”、“懷俄明” )
uj5u.com熱心網友回復:
正如其他人所指出的,您可以在表上使用資料宏來防止洗掉記錄、插入新記錄或更改特定欄位。您可能還想考慮通過在導航窗格中右鍵單擊表格,選擇屬性,然后選中“隱藏”文本框來簡單地隱藏表格。您也可以考慮使用這樣的“查找”表并將它們放在單獨的“查找”資料庫中,從當前資料庫鏈接到這些表,然后將查找資料庫 .accdb 檔案上的“只讀”標志設定為 true . 您仍然可以從當前資料庫中讀取鏈接表,但無法更改它們。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/446903.html
