-
06/16 Sequelize + node.js express 사용연습 2데이터베이스 2021. 6. 16. 15:59
0. 데이터 베이스, 테이블, 데이터 추가
1. express-sequelize 프로젝트 생성
npm init -y
npm i express
npm i mysql
npm i sequelize
npm i sequelize-auto
npm i sequelize-cli
app.js 생성
const express = require('express'); const userRouter = require(__dirname + '/routes/api'); const app = express(); const port = 3000; app.use(express.json()) app.use('/api', userRouter) app.get('/', (req, res) => { res.send(); }) app.listen(port, () => { console.log('server start'); })
2. sequelize init
sequelize init
sequelize 초기화
3. sequelize auto
auto.js
const SequelizeAuto = require('sequelize-auto'); const auto = new SequelizeAuto("nodejs", "root", "1234", { host: "localhost", port: "3307", dialect: "mysql", }); auto.run(err => { if(err) throw err; console.log("complete!"); })
node auto
로 모델 자동 생성
4. 코드 작성
mysequelize.js
const initModels = require('./models/init-models'); const { Op, Sequelize } = require('sequelize'); const sequelize = new Sequelize('nodejs', 'root', '1234', { host: 'localhost', port: '3307', dialect: 'mysql' }); const models = initModels(sequelize); module.exports = { models, Op, }
routes/api.js
const express = require("express"); const { Op, models } = require('../mysequelize'); const router = express.Router(); router.get("/users", async(req, res, next) => { console.log(req.query.id); if(req.query.id == undefined) { res.send('un'); } let tmp = await findFromUsers(req.query.id); res.send(tmp); }); router.get("/users/all", async(req, res, next) => { let tmp = await findAllFromUsers(); res.send(tmp); }); async function findFromUsers(id) { const user = await models.users.findAll({ where: { id: { [Op.eq]: id, }, }, }); const json = JSON.stringify(user); console.log(json); return json; } async function findAllFromUsers() { const user = await models.users.findAll(); const json = JSON.stringify(user); console.log(json); return json; } module.exports = router;
5. 서버 실행 후 리퀘스트
node app
'데이터베이스' 카테고리의 다른 글
07/14 데이터베이스 기초 2 (0) 2021.07.14 07/13 데이터베이스 기초1 (0) 2021.07.13 06/16 Sequelize + node.js express 사용연습 (0) 2021.06.16 06/15 node.js서버 express CRUD 구현 (0) 2021.06.15 06/15 DB update, delete 및 node.js서버 DB검색 구현 (0) 2021.06.15