node访问oracledb的环境搭建
关于安装oracleDB环境官网说明地址:
https://oracle.github.io/node-oracledb/INSTALL.html
环境搭建所需软件和文档的压缩包
链接: https://pan.baidu.com/s/1OGo9t72E1i2SBTnzYhr26A 提取码: zcwm
一、安装Pyhton2.7
1.默认选择“Install for all users”。

2.选择安装目录,建议选择默认的安装位置。

3.功能选择安装,拉到最下面的“Add python.exe to Path”这个必须安装的,选择第一个安装方式就行。

二、安装nodejs
1.选择安装位置。

2.在自定义设置页面中,确保选中“Add to Path”,然后单击“下一步”。然后点击“安装”。

三、安装oracle组件工具。
1.下载链接:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
2.根据系统选择32位或64进行下载。

2.下载两个安装包
Instant Client Package – Basic
Instant Client Package – SDK

3.下载完成后将两个压缩包的文件放到同一个文件夹下。(结果如下图)

4.添加系统变量。
右键我的电脑——属性——高级系统设置——高级——选择系统变量

5.添加和修改系统变量。
(1)在系统变量的“path”中添加两个压缩包解压出来的文件的根目录路径。
如我解压到c盘的所以输入C:\Oracle\instantclient中。

(2)新建系统变量“OCI_LIB_DIR”

(3)新建系统变量“OCI_INC_DIR”

四、Visual Studio Redistributables
当前Oracle客户端版本为12.1所以安装

其他Oracle客户端版本安装说明:
安装Visual Studio Redistributables需要根据Oracle客户端版本安装对应的Visual Studio Redistributables版本,否则无法正常调用OracleDB访问
1.Oracle客户端各版本的对应关系如下:
- Oracle客户端18和12.2需要Visual Studio 2013 Redistributable。
- Oracle客户端12.1需要Visual Studio 2010 Redistributable。
- Oracle客户端11.2需要Visual Studio 2005 Redistributable。
2.Visual Studio Redistributables各个版本的下载地址:
https://support.microsoft.com/zh-cn/help/2977003/the-latest-supported-visual-c-downloads
3.Node调用oracleDB与你配置Oracle客户端版本的Path有关系,与电脑本机安装什么Oracle版本无关系。
4.其他Visual Studio Redistributables版本的安装,
不同的window系统可能有些系统无法正常安装。
解决无法正常安装的参考方案地址:https://www.cnblogs.com/caiyt/p/10122571.html
五、安装oracledb模块。
1.安装指令: npm install oracledb
2.如果被墙下载不了可设置代理:
npm config set https-proxy http://www.example.com:80/
3.安装流程。
- 创建一个新文件夹
- 打开命令提示符窗口,进入到新创建的文件夹。
- 执行安装指令

六、测试文件,相关参数根据数据库进行修改
测试前,最好重启一下电脑,有些配置需要重启电脑才能生效。
var oracledb = require('oracledb');
oracledb.getConnection({
user: "hr",
password: "welcome",
connectString: "localhost/xe"
}, function(err, connection) {
if (err) {
console.error(err.message);
return;
}
connection.execute( "SELECT department_id, department_name FROM departments WHERE department_id = ",
[],
function(err, result) {
if (err) {
console.error(err.message);
doRelease(connection);
return;
}
console.log(result.metaData);
console.log(result.rows);
doRelease(connection);
});
});
function doRelease(connection) {
connection.release(
function(err) {
if (err) {console.error(err.message);}
}
);
}
安装过程遇过的问题:
1.下载oracledb模块失败,主要是因为系统的原因导致vs安装是相关的环境没有搭建好。可重装vs解决相关问题。


2.oracledb模块使用时,调用模块失败。这是因为加载模块的nodejs版本与调用模块的nodejs版本不同。

3.oracle组件或者没有安装好vs会报模块没有找到的错误。

node访问oracledb的环境搭建的更多相关文章
- node.js之开发环境搭建
一.安装linux系统 (已安装linux可跳此步骤) 虚拟机推荐选择:VirtualBox 或者 Vmware (专业版永久激活码:5A02H-AU243-TZJ49-GTC7K-3C61N) 我这 ...
- 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记
近期想尝试一下英特尔的基于WebRTC协同通信开发套件,所以须要在本地搭建Node.js Web的开发測试环境. 这里讲的是CentOS 下的搭建方法.使用Windows的小伙伴请參考: <No ...
- Docker学习之——Node.js+MongoDB+Nginx环境搭建(一)
最近在学习Node.js相关知识,在环境搭建上耗费了不少功夫,故此把这个过程写下来同大家分享一下,今天我先来介绍一下Docker,有很多人都写过相关知识,还有一些教程,在此我只想写一下,我的学习过程中 ...
- node 项目中 koa2 环境搭建 以及项目发布
环境搭建: 1.Koa 必须使用 7.6 以上的版本.如果你的版本低于这个要求,就要先升级 Node. 查看node版本方法:node -v 2.使用koa-generator生成器生成项目 安装ko ...
- Windows 7下Node.js Web开发环境搭建笔记
Node.js是什么? 我们看看百科里怎么说的?JavaScript是一种运行在浏览器的脚本,它简单,轻巧,易于编辑,这种脚本通常用于浏览器的前端编程,但是一位开发者Ryan有一天发现这种前端式的脚本 ...
- node学习笔记_01 环境搭建
一.下载安装nvm (node版本管理器),方便以后版本切换 nvm list -> 查看node版本(版本最好在8.0以上,不然在vsCode断点调试进不去,跟node版 ...
- node --进行后台的环境搭建
1.下载winscp --- 输入IP 端口 账号 密码 进入当前的服务器环境 2.下载xshell5 ---- 输入IP 端口 和 winscp 达成连接. 3.把本地代码放置 winscp远 ...
- node+webpack+vue的环境搭建
一般第一次搭建环境的时候,多多少少还是会出点状况的.这个时候多去百度,看牛人怎么解决,然后跟着尝试,多试几遍还是能解决的. 先说一下我安装的过程吧 1.我一开始按照官网的来搭建,失败了.报错内容是 ...
- node.js vue开发环境搭建
开发工具安装 1.安装node.js 双击安装程序 node-v8.9.3-x64.msi,进行安装即可 2.设置taobao镜像 npm config set registry https://re ...
随机推荐
- 6.方法_EJ
第38条: 检查参数的有效性 对于这一条,最常见的莫过于检查参数是否为null. 有时出现调用方未检查传入的参数是否为空,同时被调用方也没有检查参数是否为空,结果这就导致两边都没检查以至于出现null ...
- vue2 切换路由时 页面滚动到顶部 用游览器返回时 记住上页的位置
官方用例:https://router.vuejs.org/zh-cn/advanced/scroll-behavior.html import Vue from 'vue' import Route ...
- springboot 格式化返回日期
两种方式: 1,可以在 pojo 类每个属性添加 @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8&qu ...
- HTML5 & CSS3初学者指南(4) – Canvas使用
介绍 传统的HTML主要用于文本的创建,可以通过<img>标签插入图像,动画的实现则需要第三方插件.在这方面,传统的HTML极其缺乏满足现代网页多媒体需求的能力.HTML5的到来,带来了新 ...
- 系统调用syscall---用户态切换到内核态的唯一途径
1.应用程序有时需要内核协助完成一些处理,但是应用程序不可能执行内核代码(主要是安全性考虑), 那么,应用程序需要有一种机制告诉内核,它现在需要内核的帮助,这个机制就是系统调用. 2.系统调用的本质是 ...
- 关于在ROS kinetic下arbotix报错的问题
最近在学习ros过程中 出现了一个包错误 ERROR:cannot launch node of type [arbotix_python/arbotix_driver]:arbotix_pytho ...
- centos7安装jdk环境
有时候安装一些软件或者服务都需要jdk环境,今天就在centos上安装最新的jdk环境. 检测历时安装 1.查看Linux自带的JDK是否已安装 # java -version 2.查看JDK信息 # ...
- flask based on tornado
from flask import Flask from tornado.wsgi import WSGIContainer from tornado.httpserver import HTTPSe ...
- spring4笔记----spring4构造注入
与设值注入有以下不同,颜色标出 package com.ij34.web; import com.ij34.servce.people; import com.ij34.servce.root; pu ...
- Apache kylin 入门
本篇文章就概念.工作机制.数据备份.优势与不足4个方面详细介绍了Apache Kylin. Apache Kylin 简介 1. Apache kylin 是一个开源的海量数据分布式预处理引擎.它通过 ...