sequelize

Jaa-van·2023년 5월 5일
0
post-thumbnail

ORM ( Object Relational Mapping ) 으로써
JS 의 객체와 데이터베이스의 관계를 연결해주는 도구이다

mongoose 는 mongoDB 만을 지원하는 것에 반해
sequelize 는 RDBMS 에 해당하는 데이터 베이스를 다 활용할 수 있다

npm i sequelize mysql2

npm install -D sequelize-cli

npx sequelize init

ORM 의 장점

  1. 데이터베이스가 바뀌어도 적용할 수 있다는 점
  2. DB와 TABLE 의 속성이 변경되었을 때 빠르게 수정할 수 있다는 점

migration

-> sequelie CLI 를 통해 mysql 테이블을 생성하기 위해 사용된다

model

-> Table 과 column 의 속성값을 입력하여 mysql 과 express 프로젝트를 연결시킨다 ( mongoose 의 schema )

@ config/config.json의 database에 설정된 이름으로 DB를 생성합니다.

npx sequelize db:create

@ model 에 Posts 라는 이름의 테이블을 생성해준다

npx sequelize model:generate --name Posts --attributes title:string,content:string,password:string

@ migrations 폴더에 정의된 migration 파일들과 MySQL의 테이블을 맵핑시킵니다.

npx sequelize db:migrate

@CLI

  • sequelize db:create
  • sequelize db:drop
  • sequelize model:generate
  • sequelize db:migrate
  • sequelize db:migrate:undo
  • sequelize seed:generate

https://github.com/sequelize/cli#usage
참고하자

0개의 댓글