[b]0、安装node.js、VS2013(或其他)、Python2.7[/b]
[b]1、下载编译支撑文件(2个)[/b]
下载页面:[url]http://www.oracle.com/technetwork/topics/winx64soft-089540.html[/url]
下载名称:
instantclient-basiclite-windows.x64-12.1.0.2.0.zip
instantclient-sdk-windows.x64-12.1.0.2.0.zip
把两个文件解压到“D:\instantclient-basic-nt-12.1.0.2.0”文件目录不同,不会相互覆盖。
[b]2、添加环境变量[/b]
OCI_INC_DIR=D:\instantclient-basic-nt-12.1.0.2.0\sdk\include
OCI_LIB_DIR=D:\instantclient-basic-nt-12.1.0.2.0\sdk\lib\msvc
注意!如果本机安装oracle服务器端,请把环境变量如下地址(注意正确设置ORACLE_HOME环境变量):
OCI_INC_DIR = %ORACLE_HOME%\oci\include
OCI_LIB_DIR = %ORACLE_HOME%\OCI\lib\MSVC
[b]3、npm执行安装命令[/b]
npm install oracledb
如果64位Node环境中安装32位插件,则执行
npm install oracledb --arch=ia32
如果编译成功,会在node_modules\oracledb\build\Release目录中生成oracledb.node等文件
要注意与oracle instance client位数的匹配。
[b]4、查询demo代码,保存为oracle.js[/b]
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 manager_id < :id",
[110], // bind value for :id
function(err, result)
{
if (err) { console.error(err.message); return; }
console.log(result.rows);
});
});
[b]5.设置环境变量[/b]
前面两个环境变量OCI_INC_DIR、OCI_LIB_DIR是编译时需要,运行时,需要设置PATH,确保oracledb插件能够找到OCI库。
set PATH=D:\instantclient-basic-nt-12.1.0.2.0;%PATH%
[b]6.执行[/b]
进行oracle.js所在的目录,执行
node oracle.js
[b]7.更多[/b]
https://github.com/oracle/node-oracledb提供了全方位的例子,代码很好懂,仔细阅读可以了解更多oracledb使用详情。