sequelize를 사용하는데 여러개의 데이터를 등록(수정)해야 하는 경우.

 


문제

 

테이블안에 있는 컬럼 각각에 데이터를 입력(수정)해야하는 경우

 

create 를 써주면 한번 씩 create를 해줘야 해서 테이블 안 컬럼 갯수 만큼 db에 요청을 보내야함.

 

이럴 경우 만약 컬럼 갯수가 수십만.. 무수히 많을 경우 너무 비효율 적이라 생각이 듬.

 


결과

 

const test = await T1.bulkCreate(t2, {
      updateOnDuplicate: ['t3'],
    });

T1이라는 테이블에 있는 t2 라는 데이터를 't3'라는 컬럼에 한꺼번에 수정시켜줌.

 

이 경우 update 라는 느낌 보다 upsert로 덮어쓰기 개념이라 생각하면 됨. 

( 그래서 't3' 라는 컬럼이 모두 존재해야 가능 )

 

 

'Sequelize' 카테고리의 다른 글

Sequelize 쓰는 이유  (0) 2024.02.15
sequelize include 모델 order  (0) 2023.08.08
sequelize로 mysql 컬럼 value 증가시키기  (0) 2023.07.27
squelize.sync  (0) 2023.07.25