티스토리 뷰
Primary Key로 잡혀있는 컬럼으로 같은 데이터를 INSERT 시도시 중복(Duplicate) 오류가 발생한다. 이럴때 3가지 방법으로 INSERT 하는 방법이 있다. 각각의 특성을 확인하고 상황에 맞게 적용하면된다.
INSERT시 중복(Duplicate)이 오류발생시 처리방법
1. INSERT IGNORE INTO
mysql> INSERT IGNORE INTO `user`(`email`, `name`) VALUES('ref@mail.com', '레퍼런스');
Query OK, 0 rows affected (0.00 sec)
- 기존 데이터 유지
- 현재 데이터 무시
- 0 rows affected
2. REPLACE INTO
mysql> REPLACE INTO `user`(`email`, `name`) VALUES('ref@mail.com', '레퍼런스');
Query OK, 2 rows affected (0.00 sec)
- 기존 데이터 삭제
- 현재 데이터로 치환
- 2 rows affected
3. ON DUPLICATE KEY UPDATE
INSERT INTO `user`(`email`, `name`) VALUES('ref@mail.com', '레퍼런스')
ON DUPLICATE KEY UPDATE `name` = VALUES('레퍼런스2');
Query OK, 2 rows affected (0.01 sec)
- UPDATE 필드 업데이트
- 2 rows affected
'데이터베이스 > SQL' 카테고리의 다른 글
[SQL] MySQL DB Connection 확인 (0) | 2022.11.03 |
---|---|
[SQL] NOT NULL, DEFAULT 비교 (0) | 2022.08.31 |
[SQL] MySQL Select 결과로 Update (0) | 2021.03.04 |
[SQL] Joins Tutorial (0) | 2021.02.08 |
[SQL] DBMS VS RDBMS 차이 (0) | 2021.02.05 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
링크
TAG
- 프로그래머
- React
- sort algorithm
- 리액트 16
- 제주도 3박4일 일정
- Eclipse
- 오라클 내장 함수
- 이직
- 오라클
- 회고
- 리눅스 명령어
- spring
- SQL
- javascript
- 정렬 알고리즘
- 개발환경
- 자바
- 소프트웨어공학
- Linux 명령어
- Maven
- 성능분석
- 제주도 여행
- effective java
- 자바스크립트
- 경력관리
- 리액트
- Tomcat
- Collection
- 프로그래머스
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함