MySQL ALTER IGNORE TABLE 導致完整性約束違規
使用ALTER IGNORE TABLE 修改MySQL 表以刪除重複值,同時新增唯一鍵應該防止重複按鍵錯誤。然而,儘管使用了 IGNORE 標誌,用戶還是遇到了「完整性約束違規」錯誤。
說明:
MySQL 文件指出 IGNORE 指示資料庫跳過重複項ALTER TABLE 操作期間唯一鍵上的行。但在某些情況下,尤其是 InnoDB 表,IGNORE 擴充似乎有錯誤,導致完整性約束違規。
解決方案:
解決問題,請考慮以下解決方法:
切換到MyISAM 引擎:
使用IGNORE 增加唯一索引:
轉換回InnoDB:
注意:
以上是為什麼 ALTER IGNORE TABLE 仍然會導致 MySQL 中的完整性約束違規?的詳細內容。更多資訊請關注PHP中文網其他相關文章!