MySQL의 중복 키 충돌 처리: INSERT...ON 중복 키 업데이트
고유 키 제약 조건을 사용하여 MySQL 테이블에 데이터를 삽입할 때 중복 키가 발견되면 충돌이 발생합니다. INSERT...ON DUPLICATE KEY UPDATE
문은 고유 키를 기반으로 새 행을 삽입하거나 기존 행을 업데이트할 수 있도록 하여 이 문제를 우아하게 해결합니다.
고유한 'ID' 열이 있는 테이블을 생각해 보겠습니다. 기존 ID가 있는 행을 삽입하려고 하면 표준 INSERT
문이 실패합니다. INSERT...ON DUPLICATE KEY UPDATE
에서 해결책을 제시합니다.
예시 시나리오:
users
테이블
INSERT INTO users (ID, Name, Age) VALUES (1, "Bob", 30);
ID = 1
사용자가 이미 존재하는 경우 이 쿼리는 실패합니다.
해결책:
사용 INSERT...ON DUPLICATE KEY UPDATE
:
INSERT INTO users (ID, Name, Age) VALUES (1, "Bob", 30) ON DUPLICATE KEY UPDATE Name = "Bob", Age = 30;
설명:
INSERT
부분은 삽입할 데이터를 지정합니다.ON DUPLICATE KEY UPDATE
은 중복 키가 발견된 경우 업데이트 작업을 지시합니다.ID = 1
이 있으면 Name
및 Age
열이 제공된 값으로 업데이트됩니다. ID = 1
이 없으면 새 행이 삽입됩니다.이 접근 방식은 중복 키 삽입으로 인한 오류를 방지하는 동시에 데이터 무결성을 보장합니다. 이는 MySQL에서 데이터 업데이트를 관리하는 간결하고 효율적인 방법입니다.
위 내용은 INSERT...ON DUPLICATE KEY UPDATE를 사용하여 MySQL에서 행을 삽입하거나 업데이트하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!