<commit_before>C++ NodeJS module to work with Firebird SQL Server. Uses fbclient library and with a few tweaks it can use libfbembedded

![Firebird Logo](https://www.totaljs.com/exports/firebird-logo.png)

[![NPM version][npm-version-image]][npm-url] [![NPM downloads][npm-downloads-image]][npm-url] [![Mozilla License][license-image]][license-url]
[![Build Status](https://travis-ci.org/mariuz/node-firebird-libfbclient.svg?branch=master)](https://travis-ci.org/mariuz/node-firebird-libfbclient)
[![Build status](https://ci.appveyor.com/api/projects/status/53qual24r2f089ni?svg=true)](https://ci.appveyor.com/project/mariuz/node-firebird-libfbclient)

[![NPM](https://nodei.co/npm/firebird.png?downloads=true&downloadRank=true)](https://nodei.co/npm/firebird/) [![NPM](https://nodei.co/npm-dl/firebird.png?months=6&height=3)](https://nodei.co/npm/firebird/)


# Features

* Synchronous and Asynchronous methods for connection, query and fetch data
* Support of Firebird Events (post_event statement)
* Covered with tests in nodeunit
* blob field support
* blob stream compatible to node stream class
* prepared statements

As for now in plans are:

* connection pool support
* prepared statements pool
* transaction parameters support
* continous refactoring
* more tests
* services api

# Getting Started


##Under Linux, Windows and MacOS X
You will need:
 NodeJS (tested with v0.12.x or io.js stable)
 Firebird (tested with v2.5.x and v3.x)
 
 On Windows you need the [same requirements](https://github.com/atom/atom/blob/master/docs/build-instructions/windows.md) like Atom editor for building native C++ extensions 

Get Firebird.

Update your path: 
    export PATH=$PATH:/opt/firebird/bin

Create some Database: 

    isql -user sysdba -password <PASSWORD>
    CREATE DATABASE 'test.fdb';
    CONNECT 'test.fdb';
    CREATE TABLE TEST (id integer, name varchar(50));
    exit;

Clone repository and build module

    git clone git://github.com/xdenser/node-firebird-libfbclient.git
    npm install

Alternate way is to install directly from github

    npm install xdenser/node-firebird-libfbclient
 
or use the version from npmjs:<commit_msg>works with node 4.x or more<commit_after>C++ NodeJS module to work with Firebird SQL Server. Uses fbclient library and with a few tweaks it can use libfbembedded

![Firebird Logo](https://www.totaljs.com/exports/firebird-logo.png)

[![NPM version][npm-version-image]][npm-url] [![NPM downloads][npm-downloads-image]][npm-url] [![Mozilla License][license-image]][license-url]
[![Build Status](https://travis-ci.org/mariuz/node-firebird-libfbclient.svg?branch=master)](https://travis-ci.org/mariuz/node-firebird-libfbclient)
[![Build status](https://ci.appveyor.com/api/projects/status/53qual24r2f089ni?svg=true)](https://ci.appveyor.com/project/mariuz/node-firebird-libfbclient)

[![NPM](https://nodei.co/npm/firebird.png?downloads=true&downloadRank=true)](https://nodei.co/npm/firebird/) [![NPM](https://nodei.co/npm-dl/firebird.png?months=6&height=3)](https://nodei.co/npm/firebird/)


# Features

* Synchronous and Asynchronous methods for connection, query and fetch data
* Support of Firebird Events (post_event statement)
* Covered with tests in nodeunit
* blob field support
* blob stream compatible to node stream class
* prepared statements

As for now in plans are:

* connection pool support
* prepared statements pool
* transaction parameters support
* continous refactoring
* more tests
* services api

# Getting Started


##Under Linux, Windows and MacOS X
You will need:
 NodeJS (tested with v4.x or more)
 Firebird (tested with v2.5.x and v3.x)
 
 On Windows you need the [same requirements](https://github.com/atom/atom/blob/master/docs/build-instructions/windows.md) like Atom editor for building native C++ extensions 

Get Firebird.

Update your path: 
    export PATH=$PATH:/opt/firebird/bin

Create some Database: 

    isql -user sysdba -password masterkey
    CREATE DATABASE 'test.fdb';
    CONNECT 'test.fdb';
    CREATE TABLE TEST (id integer, name varchar(50));
    exit;

Clone repository and build module

    git clone git://github.com/xdenser/node-firebird-libfbclient.git
    npm install

Alternate way is to install directly from github

    npm install xdenser/node-firebird-libfbclient
 
or use the version from npmjs:
{'fraction_non_alphanumeric': 0.12105018587360594, 'fraction_numerical': 0.008131970260223048, 'mean_word_length': 4.709549071618037, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 4, 'https://': 20, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3535097', 'n_tokens_mistral': 1459, 'n_tokens_neox': 1366, 'n_words': 371}