앞의 글에서, 중복될 수 없는 데이터들을 한 쌍으로 묶어 unique 제약조건을 걸어줬다.
이미 follower_id = 2와 followee_id = 1이 존재하는 상황에서,
insert into follows
(follower_id, followee_id)
values
(2, 1);
-> 똑같은 값으로 데이터를 생성 시
-> 이 오류가 뜬다.
Error Code : 1062. Duplicate entry가 나오는 이유)
데이터베이스에 중복된 레코드를 삽입하려고 할 때 발생하고, 이 오류는 주로 유일한 제약 조건을 위반하거나 primary key 또는 unique 인덱스와 관련이 있다고 나온다.
follow_id, followee_id 두 컬럼을 한 쌍으로 묶어 unique 제약조건을 걸어줬기 때문에 두 컬럼의 값들은 unique 해야 한다. 그러므로 이미 있는 데이터를 중복해 생성하려고 할 때 생기는 오류이다.
해결 방법)
'MySQL' 카테고리의 다른 글
[MySQL] MySQL 테이블에 있는 데이터 csv, json 파일로 옮기는 방법 (0) | 2023.12.13 |
---|---|
[MySQL] foreign key의 on delete cascade 설정 방법과 동작 방법 (0) | 2023.12.04 |
[MySQL] 테이블에 unique 설정하는 방법 (0) | 2023.12.04 |
[MySQL] join과 left join 하는 방법과 예시 (0) | 2023.12.01 |
[MySQL] 테이블 생성 시 foreign key(외래키) 설정하는 법 (2) | 2023.12.01 |