Node.js v0.10.26
postgres 9.3.2
上記バージョンにて確認
Node.jsはインストールされているとして以下のパッケージをnpmでインストールする必要がある。
https://github.com/brianc/node-postgres
$ npm install pg
使い方ですが、サーバで利用を想定して行うといかになります。
var pg = require('pg'); var http = require('http'); var conString = "postgres://postgres:@localhost:5432/postgres"; var server = http.createServer(); server.on('request', doRequest); server.listen(1008); function doRequest(request, response) { var client = new pg.Client(conString); client.connect(function(err) { if(err) { return console.error('could not connect to postgres', err); } client.query('SELECT NOW() AS "theTime"', function(err, result) { response.writeHead(200, {'Content-Type': 'text/html'}); if(err) { return console.error('error running query', err); } console.log(result.rows[0].theTime); response.write(result.rows[0].theTime + ""); response.end(); client.end(); }); }); };
コネクションの関係も見ながら確認してみたのですが。
pg.ClientはdoRequest内で行い、client.endがコネクションを閉じるメソッドのため
これが必須です。これを省くとサーバが動作する限りコネクション数が増えるので注意です。