Computer Science/데이터베이스
[Mysql] Upsert란? - 1 (Insert, Update 동시에 하기)
1. 상황(or 요구사항)엑셀 데이터를 배치 처리하여 DB에 업로드하는 과정에서, 엑셀 파일 내에 이미 DB에 있는 데이터가 있을 경우, 중복해서 데이터를 입력하지 않기 위한 방법이 필요했다. 시도해 본 방법 중 주어진 상황에 가장 효율적으로 보이는 것이 Upsert 기법이었다. 이제부터 소개해보도록 하자.2. 접근법1) DB 제약사항 설정첫번째 방법은 필요한 데이터베이스에 Unique 제약사항을 추가하는 것이다.(Upsert에서도 필요한 기법이라고 생각한다.)장점DB 정합성이 보장된다.단점여러 데이터를 한번에 올리는 쿼리를 수행할 수 없다.(데이터 중 중복값이 있을 경우 예외를 던지기 때문에)2) 서버 체크 - 레코드 단위첫번째 방법은 서버에 예외를 던지기 때문에 Row Data를 개별 업로드를 해서..