집 >데이터 베이스 >MySQL 튜토리얼 >MySQL 오류 1062 수정 방법: 기본 키에 대한 중복 항목 '0'?
MySQL에서 momento_distribution 테이블의 기본 키를 수정하려고 할 때 오류가 발생했습니다. 오류 메시지 "1062 - 'PRIMARY' 키에 대한 '0' 중복 항목"은 새 기본 키 열에 중복 값이 포함되어 있음을 나타냅니다.
검사 결과 새로 생성된 id 열은 모든 행에서 '0' 값을 갖습니다. 이러한 충돌은 중복 레코드 존재로 인한 고유한 기본 키 할당을 방지합니다.
이 문제를 해결하려면 기본 키 열에 고유한 값이 포함되어 있는지 확인해야 합니다. 가장 일반적인 접근 방식은 열을 자동 증가시켜 각각의 새 행에 대해 고유한 값을 자동으로 생성하는 것입니다.
테이블 생성 수정:
CREATE TABLE `momento_distribution` ( `momento_id` INT(11) NOT NULL AUTO_INCREMENT, `momento_idmember` INT(11) NOT NULL, `created_at` DATETIME DEFAULT NULL, `updated_at` DATETIME DEFAULT NULL, `unread` TINYINT(1) DEFAULT '1', `accepted` VARCHAR(10) NOT NULL DEFAULT 'pending', `ext_member` VARCHAR(255) DEFAULT NULL, PRIMARY KEY (`momento_id`, `momento_idmember`), KEY `momento_distribution_FI_2` (`momento_idmember`), KEY `accepted` (`accepted`, `ext_member`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1$$
기존 수정 테이블:
ALTER TABLE `momento_distribution` CHANGE COLUMN `id` `id` INT(11) NOT NULL AUTO_INCREMENT, DROP PRIMARY KEY, ADD PRIMARY KEY (`id`);
참고: 이는 id 열이 이미 존재한다고 가정합니다. 그렇지 않은 경우 ALTER 문을 사용하여 생성해야 합니다.
위 내용은 MySQL 오류 1062 수정 방법: 기본 키에 대한 중복 항목 '0'?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!