Wondering what’s next for npm?Check out our public roadmap! »

    oracle-gopher

    0.1.2 • Public • Published

    oracle-gopher

    Boilerplate Node.js middleware that facilitates connections and transactions with Oracle databases.

    Requirements

    • Connects Node.js 0.10, Node.js 0.12
    • Oracle Instant Client

    Setup

    A) Oracle Instant Client Download

    1. Download the following TWO Oracle Instant Client Packages (here: http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html ). Please make sure to download the correct packages for your system architecture (i.e. 64 bit vs 32 bit)

      • Instant Client Package - Basic or Basic Lite: Contains files required to run OCI, OCCI, and JDBC-OCI applications

      • Instant Client Package - SDK: Contains additional header files and an example makefile for developing Oracle applications with Instant Client

    B) Oracle Instant Client Installation and Configuration (this example procedure is for Mac OS X 64bit ONLY)

    From a terminal window:

    1. Unzip files:
    unzip instantclient-basic-macos.x64-11.2.0.4.0.zip -d /oracle
    unzip instantclient-sdk-macos.x64-11.2.0.3.0.zip -d /oracle
    
    1. Update your .bashrc file by appending and saving the following block of code:
    ##### Oracle Instant Client 11.2 #####
    OCI_HOME=/oracle/instantclient_11_2
    OCI_LIB_DIR=$OCI_HOME
    OCI_INC_DIR=$OCI_HOME/sdk/include
    OCI_INCLUDE_DIR=$OCI_HOME/sdk/include
    OCI_VERSION=11
    DYLD_LIBRARY_PATH=$OCI_LIB_DIR
    
    1. Create the following symbolic links from within your Instant Client directory (e.g. /oracle/instantclient_11_2):
    cd /oracle/instantclient_11_2
    ln -s libclntsh.dylib.11.1 libclntsh.dylib
    ln -s libocci.dylib.11.1 libocci.dylib
    
    1. Restart your Terminal application

    C) oracle-gopher Installation

     npm install oracle-gopher
    

    Usage

    A) Example

    var Gopher = require('oracle-gopher');
    var tunnel = {
            user             : "USERNAME",   //mandatory
            password         : "PASSWORD",   //mandatory
            connectString    : "HOST:PORT/SERVICE"  //mandatory
        };
    var gopher = new Gopher(tunnel);
     
    /*-------------------------------Foraging for Data-------------------------------*/
     
    //Set Foraging Instructions via the Garden Object:
    var garden = {
            dbStatement     : "SELECT dummy FROM DUAL WHERE dummy = :DummyValue", //mandatory
            outputFormat    : "array", //not mandatory.  will use default if not explicitly set.
            maxRowsReturned : 100, //not mandatory.  will use default if not explicitly set.
            bindVariables   : {"DummyValue" : "X"} //not mandatory.  use in conjunction with dbStatement when bind variables are present.
        };
     
    // Send Gopher on it's way to return with data...
    gopher.forage(garden,
        function(err,result){
            if (err) {
                return console.log(err);
            }
            return console.log(result);
        }
    );

    Install

    npm i oracle-gopher

    DownloadsWeekly Downloads

    2

    Version

    0.1.2

    License

    MIT

    Last publish

    Collaborators

    • avatar