npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@ac-moore-inc/oracledb-wrapper

v3.0.1

Published

An easy to use orabledb wrapper with pagination and large result support.

Downloads

16

Readme

OracleDb Wrapper

An easy to use orabledb wrapper with pagination and large result support.

Created and maintained by the A.C. Moore software engineering team.

Methods

prepareService

Create the connection pools for provided databases

prepareService(config);

Parameters:

config: object

A configuration object containing information related to the database is required to connect. It is utilized by prepareService and close

config Example:
{
    databaseName: {
        'connectString': 'dbconnect',
        'poolMin': 4,
        'poolMax': 200,
        'poolIncrement': 4,
        'poolTimeout': 60,
        'user': 'db_user_name',
        'password': 'db_pass',
        'queueRequests': true,
        'queueTimeout': 0
    },
    other db connections...
}

getConnection

If connection is passed return same connection, otherwise create the connection

getConnection(databaseOrConnection, callback);

Parameters:

databaseOrConnection:

Pass the database name as a string or an existing connection


releaseConn

Releases the database connection

release(connection, info);

Parameters:

connection:

Reference to the established connection

info: string

Debugging information, will be logged if any error is encountered while releasing the connection


close

Closes the database connection pool

close(config, callback);

Parameters:

config:

See prepareService


selectQuery

Executes a select query to the database

executeQuery(options, callback);

Parameters:

options: object

|Field | Type | Required | Value | | --- | --- |--- | --- | |conn | database connection | true| database connection | |db | string | true | database name as defined in the config object used to prepare the service| |qrydata | object | false | object containing query data, details below | |flatQry |string | false | string defining the query to be executed| |bindvars | object or array | false | defines the bind variables for the query, details below| |outFormat | oracledb type | false | defines the outformat of the query. defaults to oracledb.OBJECT|

qrydata:

|Field | Type | Required| Value| | --- | --- |--- | --- | |fields | string | true | fields to be retrieved in query | |from_objects | string | true | objects to be queried | |where_clause | string | false | additional criteria for query | |order_by | string | false | field or fields to order results by|

bindvars: object

|Field | Type | Required | Value | | --- | --- |--- | --- | |val | value type | false | the value being used in the package call, omitted if value is out bound | |type | oracledb type | false | the oracledb type of the value, only required if value is vartype | |dir | oracledb.BIND_IN/BIND_OUT/BIND_INOUT | false | defines if value is in bound, out bound, or both |

bindvars object Example:
var bindvars = {
  I_EMPLOYEE_ID: {
      val: employeeId,
      type: oracledb.NUMBER,
      dir: oracledb.BIND_IN
  },
  O_ERROR_MESSAGE: {
      type: oracledb.STRING,
      dir: oracledb.BIND_OUT
  },
  v_Return: {
      type: oracledb.NUMBER,
      dir: oracledb.BIND_OUT
  }
};
bindvars: array

If the bind variables are simple values, they can be passed in an array

bindvars array Example:
var iemployee_id = employeeId
var iemployee_name = employeeName
var bindvars = [iemployee_id., iemployee_name];

executePkg

Executes a package call to the database

executePkg is also capible of executing select and update statements. Unlike selectQuery, executePkg is not optimized to retrieve large sets of data.

executePkg(options, callback);

If connection is passed in the options variable then query considered to be part of transaction and there will be no commit

If connection is not passed in the options variable then query considered to be a standalone query and there will be an autoCommit

Parameters:

options: object

|Field | Type | Required | Value | | --- | --- |--- | --- | |conn | database connection | true| database connection | |db | string | true | database name as defined in the config object used to prepare the service| |qry |string | false | string defining the package call to be executed| |bindvars | object or array | false | defines the bind variables for the query, see executeQuery for exmaples|


buildBindVariables

Builds bind variables object for package calls.

buildBindVariables(inputStructure, input);

Parameters:

inputStructure: Array
Elements: [Field name, Type, Dir, Required(boolean)]
Types Mapping:

|Symbol | Value | | --- | --- | | S | String| | N | Number | | D | Date |

Dirs Mapping:

|Symbol | Value| | --- | ---| | I | BIND_IN | | O | BIND_OUT | | IO | BIND_INOUT|

inputStructure Example:
let inputStructure = [
  ['employee', 'S', 'I', true],
  ['salary', 'N', 'I', true],
  ['hire_date', 'D', 'I', false]
  ['entry_id', 'N', 'O'],
  ['error_message', 'S', 'O']
];
input: Object

The input object property names must match the field names in inputStructure

input Example:
let input = {
  employee: 'Sally Sales',
  salary: 100000,
  hire_date: '2017-03-17T17:47:08.000Z'
};