Object-Relational Mapping의 줄임말로써,
mysql모듈을 사용할때보다 좀더 친숙한 코드형식(객체형식?)으로 작성할 수 있다.
먼저 sequelize모듈을 npm을 이용해 설치해야하며, 예시코드는 다음과 같다.
const { Sequelize } = require('sequelize');
const db = new Sequelize('chat', 'root', '', { //차례대로 데이터베이스 이름, 유저이름, 비밀번호가 들어간다.
host: 'localhost',
dialect: 'mysql' // mysql, mariadb, postgres, mssql이들어갈 수있으며,
}) // mysql의 경우는 mysql2모듈이 필요하다..?
var users = db.define('users', { // 테이블을 정의해준다. 생성은 아직 x
username : Sequelize.STRING
})
var messages = db.define('messages', { // 테이블을 정의해준다. 생성은 아직 x
user_id: Sequelize.INTEGER,
text: Sequelize.STRING,
roomname: Sequelize.STRING
})
users.sync() // 여기서 실제로 테이블이 생성된다. D.B와 연결시작
.then(function() {
return user.create({username: 'Peter'}); // INSERT INTO 구문 역할
})
.then(function() {
return user.findAll({ where: {username: 'Peter'} }); // SELECT 구문역할, (findOne도 사용가능)
})
.then(function(users) {
users.forEach(function(user) {
console.log(user.username + ' exist');
});
db.close(); // D.B와 연결 종료
})
.catch(function(err) { // 에러 핸들링
console.error(err);
db.close(); // D.B와 연결 종료
});
'TIL' 카테고리의 다른 글
deploy (0) | 2020.02.18 |
---|---|
mysql module (0) | 2020.02.10 |
Promise (0) | 2020.02.10 |
20.02.04 (0) | 2020.02.04 |