Carpe Diem

  Top > スポンサー広告> Node.js > Node.jsでのMySQLとのアクセス  

スポンサーサイト

-- - --/-- [--] - --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Node.jsでのMySQLとのアクセス

2013 - 07/22 [Mon] - 20:59

NodeでのMySQLの接続方法を説明します。
Nodeがインストールされていることが前提です。またMySQLの設定は

ユーザ:root
PASS:admin
DB:testdb
table:testtable
field:uid, name, password

とします。

◆パッケージのインストール
$ npm install mysql


◆データベース認証用の設定ファイルの作成
config.jsonという名前で設定ファイルを作ります。
別にわざわざ設定ファイルを作らずとも直書きで動きますが、今後実装することを考えるとこういう書き方を知っておいたほうがいいという事で。

config.json
{
"databaseAuth": {
"user": "root",
"password": "admin",
"database": "testdb",
"host": "localhost",
"port": 3306
}
}


◆プログラム
mysql.js
var mysql = require('mysql');
var config = require('./config'); //configの読み込み

var connection = mysql.createConnection(config.databaseAuth);

var sql = 'SELECT * FROM testtable WHERE name = ?';
var userName = 'admin';

connection.connect();

var query = connection.query(sql, [userName], function(err, results) {
if (err) {
console.log(err);
}
connection.end();
console.log(results);
});


結果はレコードが配列で返ってきます。
注意はプレースホルダー「?」に対応する値を配列[]で記述することです。
「?」が複数ある場合はその順番に[foo, bar]と記述していきます。


◆実行
$ node mysql.js
とすればあらかじめ入力していたデータが取得出来ます。
{
uid: 1,
name: 'admin',
password: '8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918'
}

◆補足
プログラムでの
var query = connection.query(sql, [values], callback)
ではcallbackを指定せずにあとからイベントを設置する方法もあります。

var query = connection.query(sql, [values]);
query.on('error', function(err) {
console.log(err);
});
query.on('result', function(results) {
console.log(results);
});
query.on('end', function() {
connection.end();
});


といった感じですね。


ソース:
MySQLで書いてあるDBをNode.jsから利用する

コメントの投稿





管理者にだけ表示を許可する

 | ホーム | 

プロフィール

Cicatrice

Author:Cicatrice
備忘録

検索フォーム

カテゴリ

最新記事

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。