NodeJS 速習チュートリアル

Node.js MySQL

Node.jsはデータベースアプリケーションの開発において非常に強力なツールとなります。
数あるデータベースの中でも、最も普及しているリレーショナルデータベース(RDBMS)の一つがMySQLです。

1. MySQLデータベースの準備

提供されているコード例を実際に動かして学習するためには、お使いのコンピュータにMySQLがインストールされている必要があります。
MySQLデータベースは、公式サイト( https://www.mysql.com/downloads/ )から無料でダウンロードすることが可能です。

2. MySQLドライバーのインストール

MySQLのセットアップが完了し、正常に動作していることを確認したら、Node.jsからアクセスするための準備を整えます。
Node.jsでMySQLデータベースにアクセスするには、ドライバー(Driver)が必要です。このチュートリアルでは、NPM(Node Package Manager)からダウンロードできる「mysql」モジュールを使用します。

コマンドターミナル(またはコマンドプロンプト)を開き、以下のコマンドを実行して「mysql」モジュールをダウンロード・インストールしてください。

C:\Users\Your Name>npm install mysql

これで、MySQLデータベースドライバーの準備が整いました。
Node.jsでは、以下のようにこのモジュールをロードしてMySQLデータベースを操作します。

let mysql = require('mysql');

3. コネクション(接続)の作成

まずは、データベースへのコネクションを作成することから始めましょう。
MySQLデータベースで設定した「ユーザー名」と「パスワード」を使用してください。

demo_db_connection.js

let mysql = require('mysql');

// 接続設定の作成
let con = mysql.createConnection({
  host: "localhost",
  user: "ユーザー名",     // あなたのMySQLユーザー名
  password: "パスワード"  // あなたのMySQLパスワード
});

// データベースへの接続実行
con.connect(function(err) {
  if (err) throw err;
  console.log("接続完了!");
});

上記のコードを「demo_db_connection.js」という名前のファイルで保存し、以下のコマンドで実行します。

demo_db_connection.js の実行

C:\Users\Your Name>node demo_db_connection.js

正常に動作すれば、以下の結果が表示されます。

Connected!

これで、SQL文を使用してデータベースへのクエリ(問い合わせ)を開始する準備が整いました。

4. データベースへのクエリ実行

MySQLデータベースからのデータ読み取りや書き込みには、SQL文を使用します。これをデータベースに対して「クエリを送る」と呼びます。

先ほどの例で作成した接続オブジェクト(con)には、データベースにクエリを実行するためのメソッドが用意されています。

con.connect(function(err) {
  if (err) throw err;
  console.log("接続完了!");
  
  // SQL文をパラメータとして渡し、結果を受け取る
  con.query(sql, function (err, result) {
    if (err) throw err;
    console.log("実行結果: " + result);
  });
});

この query メソッドは、第一引数にSQL文をとり、実行結果をコールバック関数の中で返します。