Oracle Database driver for Node.js maintained by Oracle Corp. Connect your JavaScript and TypeScript applications instantly to Oracle Database.
The node-oracledb add-on for Node.js powers high performance Oracle Database
applications. Applications can be written in TypeScript, or directly in
JavaScript.
Use node-oracledb 6.9.0 to connect Node.js 14.17, or later, to Oracle
Database. Older versions of node-oracledb may work with older versions of
Node.js.
Node-oracledb supports basic and advanced features of Oracle Database
and Oracle Client. See the homepage for a list.
The node-oracledb module is open source and maintained by Oracle Corp.
It is stable, well documented, and has a comprehensive test suite.
Run npm install oracledb
See Getting Started with Node-oracledb and Quick Start Node-oracledb Installation.
Node.js versions 14.17 and later.
Pre-built packages are available on npm and other mirror repositories.
Source code is also available.
Previous versions of node-oracledb supported older Node.js versions.
Oracle Client libraries are optional starting from node-oracledb 6.0.
Older versions of node-oracledb require Oracle Client libraries.
Thin mode: By default node-oracledb (from version 6.0 onwards) runs in a
‘Thin’ mode which connects directly to Oracle Database.
Thick mode: Some advanced Oracle Database functionality is currently only
available when optional Oracle Client libraries are loaded by
node-oracledb. Libraries are available in the free Oracle Instant
Client packages. Node-oracledb can use Oracle Client
libraries 11.2 through 23ai.
Oracle Database
Thin mode: Oracle Database 12.1 (or later) is required.
Thick mode: Oracle Database 9.2 (or later) is required, depending on the
Oracle Client library version. Oracle Database’s standard client-server
version interoperability allows connection to both older and newer
databases. For example when node-oracledb uses Oracle Client 19c libraries,
then it can connect to Oracle Database 11.2 or later.
See Documentation for the Oracle Database Node.js Add-on and the release
notes.
See the examples directory. Start with examples/example.js.
Questions about node-oracledb can be posted on GitHub or Slack (link
to join Slack).
To run the test suite, see test/README.
This project welcomes contributions from the community. Before submitting a
pull request, please review our contribution guide.
Please consult the security guide for our responsible security
vulnerability disclosure process.
Copyright © 2015, 2025, Oracle and/or its affiliates.
This software is dual-licensed to you under the Universal Permissive License
(UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl and Apache License
2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose
either license.
If you elect to accept the software under the Apache License, Version 2.0,
the following applies:
Licensed under the Apache License, Version 2.0 (the “License”);
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an “AS IS” BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.