重複主鍵錯誤:解決「錯誤代碼:1062。鍵「PRIMARY」的重複條目「1」」
嘗試時向表中插入資料時,可能會遇到錯誤訊息「錯誤代碼:1062。重複條目'1' for key 'PRIMARY'。」此錯誤表示您正在嘗試將重複值插入定義為主鍵的欄位中。
在您的情況下,問題出在表 PROGETTO 中.UFFICIO-INFORMAZIONI。該表的主鍵定義為 ID。您已在 INSERT 陳述式中明確指定 ID 的值為 1:
INSERT INTO `PROGETTO`.`UFFICIO-INFORMAZIONI` (`ID`, `viale`, `num_civico`, ...) VALUES (1, 'Viale Cogel ', '120', ...)
但是,該值已存在於表中。由於每筆記錄的主鍵都是唯一的,因此不能插入重複的值。
解決方案:使用自動增量
避免重複主鍵錯誤的建議解決方案是對 ID 欄位使用自動增量。這表示資料庫將在插入期間自動為 ID 列產生唯一值。若要啟用自動增量,請修改表定義如下:
CREATE TABLE IF NOT EXISTS `PROGETTO`.`UFFICIO-INFORMAZIONI` ( `ID` INT(11) NOT NULL AUTO_INCREMENT, `viale` VARCHAR(45) NULL, ... );
啟用自動增量後,您可以在INSERT 語句中省略ID 欄位:
INSERT INTO `PROGETTO`.`UFFICIO-INFORMAZIONI` (`viale`, `num_civico`, ...) VALUES ('Viale Cogel ', '120', ...)
透過使用自增,資料庫會自動為ID列指派唯一值,確保不會出現重複鍵錯誤。
以上是為什麼我在插入資料時收到“錯誤代碼:1062。鍵“PRIMARY”的重複條目“1”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!