Skip to content

Instantly share code, notes, and snippets.

@xdenser
Created June 1, 2012 19:36
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save xdenser/2854642 to your computer and use it in GitHub Desktop.
Save xdenser/2854642 to your computer and use it in GitHub Desktop.
node-firebird vs node-firebird-libfbclient
var cfg = require("./config").cfg;
var fb = require('../node_firebird/firebird');
var util = require('util');
var events = require('events');
var http = require('http');
var con = fb.createConnection();
con.connectSync(cfg.db, cfg.user, cfg.password, cfg.role);
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
function doTr(){
if(!con.inTransaction){
con.startTransaction(doTr);
return;
}
con.query('select * from test',function(err,rs){
var rows = rs.fetchSync("all",false);
con.commit();
res.write('[');
rows.forEach(function(r){
res.write(JSON.stringify(r)+',');
});
res.end(']');
});
}
doTr();
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337/');
process.on('exit',function(){
con.disconnect();
});
var cfg = require("./config").cfg;
var fb = require('./node-firebird/lib/index.js');
var util = require('util');
var events = require('events');
var http = require('http');
var con = new fb.Database('127.0.0.1', 3050, cfg.db, cfg.user, cfg.password,
function(){
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
function doReq(){
con.execute("select * from test", function(rs){
res.write('[');
rs.data.forEach(function(r){
res.write(JSON.stringify(r)+',');
});
res.end(']');
},function(err){ console.log(err);});
}
doReq();
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337/');
});
process.on('exit',function(){
con.detach();
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment