▷ 졸업작품에서 DB와 서버를 맡았다.
먼저 DB에 테이블을 입력을 하고 서버를 만들기 시작했다.
이전의 nodejs를 이용한 서버+DB 개발 때에는 DB를 mogodb를 사용을 했다. 하지만 이번에는 mariaDB를 사용했다.
그래서 먼저 DB에다가 테이블을 작성을 다하고 서버를 만들었는데 query문을 작성을 해서 디비를 사용할 생각이었다가.. Sequelize 라는 ORM을 알게 되었다.
그래서 Sequellize을 써야지 했는데 따로 모델을 써줘야 되는 것이었다....!(그러기에 이미 디비에 테이블 저장이 됬는데)
그래서 여러 검색을 하다가,,
migration도 매뉴얼을 직접 번역도 해보고,,, 별의별 짓을 다했다가 그냥 쓰지 말까 고민을 하다가
stackoverflow에서 이 글을 발견했다!
Sequelize: how to import definitions from an existing database
Am I required to handwrite the model definitions for Sequelize even if I'm working off of an existing database. If it's not required, then how does one go about using Sequelize with an existing da...
stackoverflow.com
이 질문에 답변에 sequelize-auto 모듈을 알려준 것이었다!
그래서 바로 npm으로 인스톨을 해서 사용을 했다!
>npm install -g sequelize-auto
>sequelize-auto -o "./models" -d databasename -h localhost -u username -x password -e mysql
하지만 에러가 났다,,,
throw new Error('Please install mysql package manually');
^
Error: Please install mysql package manually
mysql모듈은 프로젝트에 설치를 했는데 왜 에러가 났지 ㅜㅜㅜ 이러고 고민을 하고 있던 도중
Node Express에 sequelize를 이용해 mysql접속하기
들어아기 테스트용 Express 프로젝트 생성하기 시퀄라이저(sequelize)란 시퀄라이저의 특징 Express서버에 시퀄라이저(sequelize) 연동하기 1번 방법 시퀄라이저 연동(시퀄라이저에서 DB Entity를 관리하는 방식) 2번 방법 진화된 시퀄라이저 연동(DB는 DB에서 따로 관리하는 방식) workbench로 ERD로 DB 스키
blog.hanumoka.net
이분 블로그에서
mysql을 전역으로 설치를 해야 한다는 것을 깨달았다!
>npm install -g mysql
그리고 다시 실행해 보니 에러가 나지 않았다!
Sequelize-auto의 깃허브
https://github.com/sequelize/sequelize-auto
sequelize/sequelize-auto
Automatically generate bare sequelize models from your database. - sequelize/sequelize-auto
github.com
나중에 Sequelize을 더 자세하게 공부하고 써야겠다!