NodeJs连接Oracle数据库
参考地址:https://www.cnblogs.com/vipstone/p/4794747.html
运行原理分析
npm调用下载,下载成功之后交由oracle客户端解析驱动包,解析成功之后,执行完成,目录node_modules生成oracledb模块;
程序运行时调用oracle sdk执行代码编译,程序运行逻辑处理,输出页面结果。
实现步骤简介
1、下载解压需要安装包(2个)
2、添加环境变量
3、npm执行安装命令
4、查询demo代码
5、常见错误解决方案
安装详情
1、下载解压需要安装包(2个)
下载页面:http://www.oracle.com/technetwork/topics/winx64soft-089540.html
下载名称:
instantclient-basiclite-windows.x64-12.1.0.2.0.zip
instantclient-sdk-windows.x64-12.1.0.2.0.zip
把两个文件解压到“D:\oracle11”文件目录不同,不会相互覆盖。
2、添加环境变量
OCI_INC_DIR=D:\oracle11\instantclient-sdk-windows.x64-11.2.0.4.0\instantclient_11_2\sdk\include
OCI_LIB_DIR=D:\oracle11\instantclient-sdk-windows.x64-11.2.0.4.0\instantclient_11_2\sdk\lib\msvc
注意!如果本机安装oracle服务器端,请把次环境变量如下地址:
OCI_INC_DIR = D:\app\Administrator\product\11.2.0\dbhome_1\OCI\include
OCI_LIB_DIR = D:\app\Administrator\product\11.2.0\dbhome_1\OCI\lib\MSVC
3、npm执行安装命令
cmd->npm install oracledb
4、查询demo代码
router.get('/orc_select', function (req, res, next) {
var oracledb = require('oracledb');
oracledb.getConnection(
{
user: 'username',
password: 'password',
connectString: '10.44.20.10:1521/ORCL'
},
function (err, connection) {
if (err) {
console.error(err.message);
return;
}
connection.execute(
"SELECT * from dual where id=:id",
[1072], // bind value for :id
function (err, result) {
if (err) {
console.error(err.message);
return;
}
res.render('index', {title: '查询信息:' + JSON.stringify(result.rows)});
});
});
});