MySQL 外鍵約束錯誤:型別不符合
在MySQL中,嘗試在表table1和table2之間建立外鍵約束時,可能會出現「外鍵約束格式不正確」的錯誤。此限制旨在將table2中的列IDFromTable1連結到table1中的列ID,以確保引用完整性。
儘管兩個表都使用InnoDB儲存引擎,並且列的資料類型均為char類型,但錯誤仍然存在。問題的根源在於列屬性的差異。
具體來說,外鍵列IDFromTable1和被引用列ID的資料類型或長度不同。為了解決這個問題,必須確保參與外鍵關係的對應列具有完全相同的資料類型和長度。
在本例中,外鍵列定義為SMALLINT(5) UNSIGNED,而被引用列為INT(10) UNSIGNED。透過將列屬性對齊來解決此類型不符問題,從而成功建立外鍵約束。
以上是為什麼 MySQL 會拋出「外鍵約束格式不正確」錯誤,如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!