(노드 숙련편 개인 과제중)
지난 과제에서 데이터베이스로 MongoDB를 사용 하던 것을 MySQL로 옮기는 작업에 들어갔다. 어제는 mongoose 문서를 팠는데 오늘은 180도 선회하여 sequelize 문서를 탐구하고 있으니 현기증이 났다.
- MySQL을 Node.js 환경에서 사용하기 위한 모듈 Sequelize를 도입하고 mongoose로 짰던 코드를 sequelize 코드로 바꿔봄.
- ORM이 이런 건가… 하는 느낌이 조금씩 들고 있음. 오늘 강의에선 특별히 ORM이 이런 거다 하는 얘기가 없었지만. sequelize로 데이터 테이블 모델(스키마)를 하나 만들 때, models 폴더에 만들어지는 파일이 “내 코드에서 사용하게 되는 쪽”, migrations 폴더에 만들어지는 게 나중에 진짜 “MySQL DB에 테이블을 만들게 되는 쪽”인 것 같다. 이런 식으로 보아도 이해가 조금 되고, SQL문이 자바스크립트 같은 프로그래밍 언어와 아주 다른데 js 언어로 이걸 어떻게든 표현해서 쿼리문을 실행시키도록 만든 게 ORM이라고 보아도 이해가 된다.
내일 할 일:
- https://sequelize.org/docs/v6/core-concepts/model-basics/#strings
이곳 이어서 보고 models 파일과 migrations 파일에 데이터베이스 테이블 스키마 완성하기
- DataTypes.TEXT란 것
- migration 파일에 대해서는 공식 문서에서 항목을 못 찾았다. “migration” 혹은 “Sequelize.INTEGER” 같은 키워드로 검색해보기
- foreign 키를 어떻게 지정하는지(굳이 지정해야 할지)(어차피 조회할 땐 join으로 합쳐서 가져올텐데)
- DrawSQL 여기서 ERD 그리기 (외래키를 직접 지정하는 대신 여기서만 관계도로 표현해주기..?)
- 회원가입 API와 기타 등등 만들기 ⇒ 진행중
Uploaded by N2T