Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Oracle database bindings for Node.js
C++ JavaScript
tree: 30cc7f50b8

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
src
.gitignore
.gitmodules
README.md
db-oracle.js
package.json
tests.js
wscript

README.md

db-oracle: Oracle database bindings for Node.js

For detailed information about this and other Node.js database bindings visit the Node.js db-mysql homepage.

INSTALL

OCI libraries

Before proceeding with installation, you need to have the OCI instant client libraries and include files. For example, you download the instantclient-basic-linux.x64-11.2.0.3.0.zip library file, and the instantclient-sdk-linux.x64-11.2.0.3.0.zip SDK file, and save them in your $HOME/Downloads directory. You would then uncompress both files, and move the generated directory to your /opt path:

$ cd $HOME/Downloads
$ unzip instantclient-basic-linux.x64-11.2.0.3.0.zip
$ unzip instantclient-sdk-linux.x64-11.2.0.3.0.zip 
$ sudo mv instantclient_11_2/ /opt/instantclient

After uncompressing you will probably need to create symbolink links:

$ cd /opt/instantclient
$ sudo ln -s libocci.so.11.1 libocci.so
$ sudo ln -s libclntsh.so.11.1 libclntsh.so

You will also need libaio. In Arch Linux this can easily be installed with:

$ sudo pacman -S libaio

On Debian based distros:

$ sudo apt-get install libaio

Configuring OCI

Once you have the library and include files installed, and in order for the installation script to locate them properly, you'll need to set the OCI_INCLUDE_DIR and OCI_LIB_DIR environment variables. For example:

$ export OCI_INCLUDE_DIR=/opt/instantclient/sdk/include/
$ export OCI_LIB_DIR=/opt/instantclient

Install

Once the environment variables are set, install with npm:

$ npm install db-oracle

QUICK START

var oracle = require('db-oracle');
new oracle.Database({
    hostname: 'localhost',
    user: 'root',
    password: 'password',
    database: 'node'
}).connect(function(error) {
    if (error) {
        return console.log("CONNECTION ERROR: " + error);
    }

    this.query().select('*').from('users').execute(function(error, rows) {
        if (error) {
            return console.log('ERROR: ' + error);
        }
        console.log(rows.length + ' ROWS');
    });
});

LICENSE

This module is released under the MIT License.

Something went wrong with that request. Please try again.