我想限制字段中的輸入錯誤。我正在建設的網站包含汽車數據。如何避免在一個字段中輸入互斥數據mysql
汽車可以有一個列表中的多個設備(空調,ABS,真皮座椅等),並且我想以某種方式防止數據輸入出錯,或者至少使其最小化。
錯誤的第一種情況是當數據輸入2個或更多互斥設備時。例如,汽車不能具有手動空調和自動空調以及自動空調雙區域。汽車中只有一種可以存在。
錯誤的第二種情況是當沒有先決條件的設備輸入數據時。例如,進入緊急制動輔助(BA)而沒有所需的ABS。一輛汽車可以沒有BA的ABS ,但BA只會存在於ABS汽車中。
輸入數據的表格很簡單。每輛車(version_id)都有多個設備(修剪)或trim_ids。 Version_id和trim_id分別是表格版本和修剪的FK。所以在table versiontrim中已經處理了不存在的trim_id或version_id的錯誤。
表versiontrim(在這裏我希望儘量減少數據錯誤)
version_id trim_id
表修剪:
trim_id trim trimtype
表版本
version_id model_id version active bodytype places motor_id etc...
我明白任何幫助。
與數據混合業務需求......這種事情應該由GUI應用程序或應用服務器,數據庫不是你 – Hawili
可以使用存儲過程來插入數據,而不是直接訪問表,在這種情況下,你可以做任何處理在實際插入之前檢查或插入任何先決條件 – Hawili
謝謝Hawili。我只是想着你的第一條評論。在某種程度上,數據庫中的所有內容都是由業務需求驅動的,在特定情況下,它與數據的一致性有關。按照存儲過程,我仍然需要介紹它。將檢查出來。 – BernardA