Full_Stack developer

Sequelize 와 ORM 본문

BE/node.js & express

Sequelize 와 ORM

develkbh 2024. 2. 16. 16:03


Sequelize 란?

 

  • 자바스크립트 구문을 알아서 SQL로 변환해준다.
  • DB 작업을 쉽게 할 수 있도록 도와주는 ORM 라이브러리 중 하나

Reference | Sequelize

 

Reference | Sequelize

V Deferrable: {"INITIALLY_DEFERRED": *, "INITIALLY_IMMEDIATE": *, "NOT": *, "SET_DEFERRED": *, "SET_IMMEDIATE": *}

sequelize.org

 


Sequelize 설치

 

 

 


Sequelize 모델 정의

mysql에서 정의한 테이블을 sequelize에서도 정의 필요 => mysql 테이블과 sequelize의 모델이 대응!!!!

 


Sequelize.define() 첫 번째 인자 - 모델 이름 설정

 

Sequelize.define() 두 번째 인자 - 컬럼 정의

 

Sequelize 자료형 (DataTypes) vs. MySQL 자료형

 

더 많은 데이터 종류는? 공식문서를 참고하자

Sequelize

 

Sequelize.define() 세 번째 인자 - 모델 옵션 정의

 


sync()

  • 모델과 DB를 연결 • DML 뿐만 아니라 DDL 을 사용할 수 있도록 도움
  • 이미 만들어져 있는 데이터베이스 테이블에 모델을 매핑할 수도 있지만, 새롭게 테이블을 만들 수도 있음!!
    • sync({force: true}) 테이블 있다면 삭제 후 테이블 생성
    • sync({force: false}) or sync() 테이블이 존재한다면 해당 테이블 사용, 테이블이 존재하지 않는다면 테이블 새로 생성

{force:true} 옵션은 테이블 전체를 삭제하기 때문에 되도록 사용하지 않는게 좋다!


Sequelize 쿼리문

  • findAll() - select
  • findOne() - select
  • create() - insert
  • update() - update
  • destroy() - delete

'BE > node.js & express' 카테고리의 다른 글

nodejs 환경변수  (0) 2024.02.16
Node.js MVC 패턴  (2) 2024.02.07
Node.js 란?  (2) 2024.02.05