Skip to content

Latest commit

 

History

History
82 lines (63 loc) · 2.42 KB

README.md

File metadata and controls

82 lines (63 loc) · 2.42 KB

Install

Example

var oracle = require("oracle");

oracle.connect({ "hostname": "localhost", "user": "test", "password": "test" }, function(err, connection) {
  // selecting rows
  connection.execute("SELECT * FROM person WHERE name = :1", ['bob smith'], function(err, results) {
    // results will be an array of objects
  });

  // inserting with return value
  connection.execute(
    "INSERT INTO person (name) VALUES (:1) RETURNING id INTO :2",
    ['joe ferner', new oracle.OutParam()],
    function(err, results) {
      // results.updateCount = 1
      // results.returnParam = the id of the person just inserted
    });

  connection.setAutoCommit(true);

  connection.commit(function(err) {
    // transaction committed
  });

  connection.rollback(function(err) {
    // transaction rolledback
  });

  connection.close(); // call this when you are done with the connection
});

Develop

Install Oracle/Oracle Express

  • Download Oracle Express 10g
  • Download Instant Client
  • Instant Client Package - Basic Lite
  • Instant Client Package - SQL*Plus
  • Instant Client Package - SDK
  • Install Oracle Express (Ubuntu)
sudo dpkg -i oracle-xe_11.2.0.3.0-1.0_i386.deb
sudo apt-get install alien
sudo alien oracle-instantclient11.2-*
sudo dpkg -i oracle-instantclient11.2-*.deb
sudo /etc/init.d/oracle-xe configure
  • Open http://localhost:9999/apex/ change 9999 to the port you configured. Log-in with "sys" and the password.
  • Create a user called "test" with password "test" and give all accesses.
sudo vi /etc/ld.so.conf.d/oracle.conf -- add this line /usr/lib/oracle/11.2/client/lib/
sudo ldconfig

export ORACLE_SID=test
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/11.2/server
export OCI_INCLUDE_DIR=/usr/include/oracle/11.2/client/
export OCI_LIB_DIR=/usr/lib/oracle/11.2/client/lib/
sqlplus test@XE

Build

node-waf configure
node-waf build
nodeunit tests/*