node 连接 oracle 示例
本示例采用的 oracledb 和 instantclient-basic-windows 来源于oracle官方
官方文档 https://oracle.github.io/node-oracledb/doc/api.html#intro
准备
- 确保 node 正确安装
- 下载解压oracle 官方组件 instantclient-basic-windows (node 与 oracle 不在同一台电脑上才需要) 到
D:\soft\instantclient_19_10
- 本示例使用包管理工具
yarn
步骤
1. 创建并初始化项目
- 创建文件夹
example1
cd example1
yarn init
2. 在项目中安装 oracledb
yarn add oracledb
3. 编写示例代码
index.js
const oracledb = require('oracledb');
const exe = "D:\\soft\\instantclient_19_10"
const dbConfig = {
user : "OAKQ",
password : "OAKQ.1234",
connectString : "192.168.1.11:1521/OAKQ"
};
// 使用instantclient-basic-windows
try {
oracledb.initOracleClient({libDir: exe});
} catch (err) {
console.error('Whoops!');
console.error(err);
process.exit(1);
}
async function run() {
try {
let connection = await oracledb.getConnection(dbConfig);
let binds = {};
let options = {
outFormat: oracledb.OUT_FORMAT_OBJECT, // query result format
};
sql = `select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as SYSTEM from dual`;
result = await connection.execute(sql, binds, options);
console.log("数据库系统时间: "+result.rows[0]["SYSTEM"]);
}catch(ex){
console.error(ex);
}
}
run()
4. 运行
node index.js