• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

upsert를 insert보다 권장하시는 이유는 그냥 편의적인 이유인가요?

24.03.21 02:10 작성 조회수 74

1

안녕하세요?
질문 그대로 upsert를 insert보다 권장하시는 이유는 그냥 편의적인 이유인가요?

어떤 성능상의 이유가 있는지, 유니크함을 보장하기 위한 수단인건지 등등 단순히 편의적인 이유이상의 무엇인가가 있는지 궁금합니다.(즉, 반대로 편하다는 이유만으로도 사용해도 되는지 궁금하네요)

답변 1

답변을 작성해보세요.

0

질문 감사합니다.

 

데이터가 쌓이고 관리되는 방식에 따라 다릅니다.

 

레거시로 그냥 사용하는경우도 있고.

단순히 CRUD를 구현을 하시면 INSERT를 사용하셔도 무방합니다.

 

하지만 질문주신거처럼 유니크함을 구현해야한다. 이런 경우에는 실수를 줄이기위해 UPSERT가 좀 더 적합하겠죠.

 

이는 상황에 따른거니 정답은 없습니다.

UPSERT인데도 INSERT하는 경우에만 동작을 하는 오퍼레이터인 setOnInsert 같은 부분도 존재하니

다양하게 공부하시고 구현해보시면 좋을꺼 같습니다.

 

감사합니다.