강의 외 질문입니다. 부탁드립니다.
273

답변 1
0
네 DB에 들어갈 데이터 정제는 백엔드 서버에서 하는 겁니다. 프론트에서 변경한 데이터들을 보내면, 서버는 그걸 취합해서 쿼리로 만듭니다. 이 때 variant들을 추가/제거할 수도 있고요. 최종적으로 DB에도 update 쿼리를 하나만 날리는 게 제일 좋습니다.
0
답변 감사합니다.
서버로 변경된 데이트를 보내면 취합을 서버가 한다고 하셨는데요. 서버는 프론트엔드에서 보낸 state를 가지고 어떤 object가 삭제됐는지, 어떤 오브젝크가 생성됐는지, 수정됐는지 어떻게 파악을 하나요? 결국 디비에 select쿼리(or find)로 불러와서 일일이 다 비교해봐야 알수 있지 않나요?
서버에서 어떤 variant를 삭제하고 추가하고 변경할지 가공하는 작업이 데이터베이스의 내용과 일일이 비교해야해서 많은 쿼리문을 보내서 그 결과를 비교해봐야할거같은데, 일일히 비교하는것 말고 더 괜찮은 방법이 있나요?
0
왜 많은 쿼리문을 보내야 하나요? 전체 조회를 하는 쿼리 1개를 보내고 그것과 프론트에서 보낸 상태와 비교해서 바뀐 부분만 추려서 업데이트하는 쿼리 2개면 되지 않나요? 또한 프론트에 이미 전체 데이터가 있고, 그걸 기반으로 바꾼 거면 조회하는 쿼리 1개조차도 필요없을 수 있습니다.
0
맞습니다. 제가생각이 짧았네요. 덕분에 많은 공부할수 있게 됐습니다!! 감사합니다.
또한 프론트에 이미 전체 데이터가 있고, 그걸 기반으로 바꾼 거면 조회하는 쿼리 1개조차도 필요없을 수 있습니다.
- 이 경우는 프론트에서 전체 데이터를 같이 백앤드로 보냈을 경우인가요?





