집 >데이터 베이스 >MySQL 튜토리얼 >고유 인덱스와 다양한 처리 방법을 사용하여 MySQL에서 중복 항목을 방지하려면 어떻게 해야 합니까?
phpMyAdmin을 사용하여 MySQL에서 중복 항목 방지
테이블에 데이터를 삽입할 때는 데이터 무결성을 손상시킬 수 있는 중복을 방지하기 위해 꼼꼼하게 관리해야 합니다. MySQL에서는 특히 대규모 데이터 세트의 경우 이를 달성하는 것이 중요합니다. 중복을 방지하는 한 가지 방법은 고유 인덱스를 사용하는 것입니다.
고유 인덱스 생성
회피 조치를 구현하기 전에 테이블에 고유 인덱스를 설정하는 것이 중요합니다. . 이렇게 하면 특정 열(이 경우 pageId 및 이름)의 조합이 반복될 수 없습니다. 이렇게 하려면 다음 쿼리를 실행하세요.
ALTER TABLE thetable ADD UNIQUE INDEX(pageid, name);
중복 시나리오 처리
고유 인덱스가 있으면 다음 단계는 중복 처리 방법을 결정하는 것입니다. 항목. 세 가지 일반적인 옵션은 다음과 같습니다.
INSERT IGNORE INTO thetable (pageid, name) VALUES (1, "foo"), (1, "foo");
이 방법은 중복 행을 모두 삭제하고 고유한 행만 삽입합니다. .
INSERT INTO thetable (pageid, name, somefield) VALUES (1, "foo", "first") ON DUPLICATE KEY UPDATE (somefield = 'first'); INSERT INTO thetable (pageid, name, somefield) VALUES (1, "foo", "second") ON DUPLICATE KEY UPDATE (somefield = 'second');
ON DUPLICATE KEY UPDATE를 사용하면 중복 행이 제공된 값으로 업데이트됩니다. somefield의 값은 삽입 순서에 따라 '첫 번째' 또는 '두 번째'가 됩니다.
INSERT INTO thetable (pageid, name) VALUES (1, "foo"), (1, "foo") ON DUPLICATE KEY UPDATE (pagecount = pagecount + 1);
이 방법은 각 고유 페이지 ID 및 이름 조합의 발생 횟수를 유지합니다. 항목이 중복될 때마다 페이지 수 필드가 증가합니다.
위 내용은 고유 인덱스와 다양한 처리 방법을 사용하여 MySQL에서 중복 항목을 방지하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!