MySQL 8.0版本中的1072錯誤是什么?
在MySQL 8.0版本中,當你嘗試往一個含有自增列的表中插入一個已經存在的自增列值時,就會出現1072錯誤。
這種情況會發生在以下兩種情況:
1. 你手動指定了自增列的值,而這個值已經存在于表中 2. 在一個多節點復制的環境中,你往一個表中插入一個在其他節點中已經存在的自增列值
這個錯誤提示一般為:
Error Code: 1072. Key column 'xxx' does not exist in table
如何解決這個錯誤?
有以下幾種解決方案:
1. 不要手動指定自增列的值,讓MySQL自動生成 2. 在多節點復制中,把插入數據的語句發給所有節點,保證所有節點都插入該數據,避免出現沖突
總結
如果出現1072錯誤,那么很可能是自增列值已經存在于表中。應該避免手動指定自增列的值,讓MySQL自動生成,或者確保在多節點復制中所有節點插入同樣的數據,避免出現沖突。
下一篇1063 mysql