Node.js와 함께하는 시퀄라이저(Sequelize) 기초

yujin·2023년 11월 10일
0

TIL

목록 보기
8/48
post-thumbnail

Node.js와 함께하는 시퀄라이저(Sequelize) 기초


1. 시퀄라이저(Sequelize)란?

시퀄라이저는 Node.js 환경에서 사용하는 ORM(Object-Relational Mapping) 라이브러리 중 하나로, SQL 데이터베이스를 객체 지향적으로 다룰 수 있게 도와준다. MySQL, PostgreSQL, SQLite, Microsoft SQL Server 등 여러 SQL 데이터베이스를 지원하며, 자바스크립트 코드로 데이터베이스의 테이블을 생성, 조회, 수정, 삭제하는 작업을 할 수 있다.

2. 시퀄라이저(Sequelize)의 사용법

시퀄라이저를 사용하기 위해선 먼저 npm을 통해 라이브러르 설치를 해야한다.

npm install --save sequelize
npm install --save pg pg-hstore # PostgreSQL를 사용하는 경우

그 후, Sequelize 객체를 생성하고 이를 사용하여 DB와의 연결을 설정한다.

const { Sequelize } = require('sequelize');
const sequelize = new Sequelize('database', 'username', 'password', {
  host: 'localhost',
  dialect: 'postgres'
});

이렇게 생성한 Sequelize 객체를 사용하여 모델을 정의하고, CRUD 작업을 수행할 수 있다.

3. 시퀄라이저(Sequelize)의 장점

시퀄라이저는 SQL 쿼리를 직접 작성하지 않고도 데이터베이스 작업을 수행할 수 있게 해주는 편리한 도구다. 또한, 자바스크립트 코드를 통해 데이터베이스를 다룰 수 있으므로 코드의 일관성을 유지할 수 있고, SQL 쿼리에 대한 실수를 줄일 수 있다.

4. 예시

  • 시퀄라이저를 사용하여 User 모델을 생성하고, 새로운 사용자를 추가하는 예시.
const { Sequelize, DataTypes } = require('sequelize');
const sequelize = new Sequelize('database', 'username', 'password', {
  host: 'localhost',
  dialect: 'postgres'
});

const User = sequelize.define('User', {
  // 모델 속성 정의
  firstName: {
    type: DataTypes.STRING,
    allowNull: false
  },
  lastName: {
    type: DataTypes.STRING
  }
});

// 사용자 생성
User.create({ firstName: "Tom", lastName: "Hanks" })
  .then(user => console.log(user.id));

5. etc

나처럼 ES6 문법을 좋아하는 사람이라면 굉장한 스트레스를 받을 수도 있으니 주의하자.
정말 어마어마한 에러를 보게 될 거다.

profile
고통 받는 코딩일기

0개의 댓글