Tech Sketch Bucket of Technical Chips by TIS Inc.

Node.jsのORM Sequelizeを使う【基本編】

Pocket

この記事はeXcale Developer's Blogから移転されたものです。

eXcale開発チームの泉谷(@syguer)です。
今回はNode.jsで使えるORMであるSequelizeを紹介します。

Sequelizeとは

SequelizeはMySQL、SQLite、PostgreSQLに対応しているNode.jsのORMです。
Node.jsで使えるORMはnode-orm2や、Bookshelf.jsなど多数存在していますが、
Sequelizeはgithubリポジトリのstar数が最も多く(※)、人気のあるORMです。

Sequelize - 公式サイト
Sequelize - Github

※2013年11月5日現在のstar数はnode-orm2が468、bookshelf.jsが563に対してSequelizeは1326!

Sequelizeの使い方

Sequelizeはnpmからインストールできます。2013年11月5日現在の最新版は2.0.0-beta.1となっています。

DBとの接続

まず、DBとの接続をします。
以下のようになります。

モデルの定義

今回は名前とEmailアドレスを持つUserモデルを定義してみます。
以下のような形になります。

sequelizeのdefineを呼び出してモデルを定義します。
sequelizeで使えるデータ型については公式ドキュメントのこちらを参照してください。

モデルを定義した後はsyncメソッドを呼ぶことでDBに実際のテーブルが作成されます。

CRUD操作

ここで、定義したモデルの基本的なCRUD操作について解説します。
sequelizeではdefineの戻り値を受けて、メソッドを呼び出します。
上述の例ではvar Userで受けていますので、Userを使います。

・作成

・参照

・更新

・削除

実際に使ってみる

では、簡単なコードでSequelizeを使ってみます。以下のコードをapp.jsなどとして保存し、
「node app.js」とすれば動作します。

ちなみにDBを見てみると、以下のようになっています。

このように、SequelizeではidとcreatedAt、updatedAtが自動で付与されます。

最後に

今回の基本編ではNode.jsで使えるORMであるSequelizeについて基本的な操作を紹介しました。
次回の応用編ではExpress上で使う方法と、eXcaleへのデプロイを紹介したいと思います。

エンジニア採用中!私たちと一緒に働いてみませんか?