Access鍵值沖突該怎么處理
發(fā)表時(shí)間:2023-08-14 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]雖然本文的制作環(huán)境是Access2016,但操作與2010版甚至2003版是一致的。如圖,錯(cuò)誤提示,是有2條記錄由于鍵值沖突無法追加。這個(gè)追加查詢是追加4條記錄的,如果按“是&a...
雖然本文的制作環(huán)境是Access2016,但操作與2010版甚至2003版是一致的。如圖,錯(cuò)誤提示,是有2條記錄由于鍵值沖突無法追加。這個(gè)追加查詢是追加4條記錄的,如果按“是”就只追加2條,如果按“否”就不執(zhí)行追加查詢(追加0條)。
方法一:
原因三,外鍵缺少記錄。如圖,訂單表和供應(yīng)商表設(shè)置了關(guān)系,供應(yīng)商表的主鍵供應(yīng)商與訂單表供應(yīng)商字段作了關(guān)聯(lián),實(shí)施參照完整性,所以訂單表的供應(yīng)商字段是外鍵。追加表中有一條含有“戊供應(yīng)商”的記錄,而供應(yīng)商表沒有對應(yīng)的記錄,這也是會造成鍵值沖突的。
應(yīng)對三,補(bǔ)值。如圖,在供應(yīng)商表補(bǔ)充“戊供應(yīng)商”的記錄。
方法二:
原因一,追加表中本身就存在重復(fù)鍵值。如圖,訂單表是被追加數(shù)據(jù)進(jìn)去的表,主鍵是訂單號。主鍵是不可為空不可重復(fù)的。這里的追加表中訂單號字段有2條記錄重復(fù)了(訂單號記錄為:D0021)。
應(yīng)對一,刪除追加表的重復(fù)記錄。經(jīng)過甄別,第2條和第4條記錄是完全相同的,刪除第4條記錄即可。
方法三:
原因二,追加表與被追加表有重復(fù)鍵值。如圖,訂單表已經(jīng)存有D0012的訂單號記錄(第3條記錄),而追加表也有這個(gè)訂單號(也是第3條記錄)。
應(yīng)對二,刪除重復(fù)記錄。經(jīng)過甄別,追加表和被追加表的這條記錄是完全相同的?蓜h除追加表記錄,也可以刪除被追加表的這條記錄(如圖是后者)。
注意事項(xiàng):本范例是根據(jù)追加查詢錯(cuò)誤制作的,對于更新查詢出現(xiàn)的鍵值沖突,也可參考。
Microsoft Access在很多地方得到廣泛使用,例如小型企業(yè),大公司的部門。