1

使用 OracleDB 时出错,出现错误“找不到指定的过程”。节点安装 OracleDB 顺利。为构建执行的步骤是

  • 已安装 Visual Studio 2017 Visual C++ 14.0
  • 下载并关注 oracle 即时客户端和 sdk,添加 OCI_BIN 和 OCI_INC
  • npm 安装 npm@latest
  • npm install node-gyp -g (在此步骤之前删除 c:\users\.node-gyp
  • npm 安装 oracledb
  • OCI_INC_DIR 指向“C:\Oracle\instantclient\lib\msvc”
  • OCI_LIB_DIR 指向 'C:\Oracle\instantclient\include' npm done 用于 oracledb@1.13.1

node app.js 使用/app.js 内容运行代码时出错

var oracle = require("oracledb");
console.log(oracle)

Windows 8.1 x64 64 Bit OS
gyp info using node-gyp@3.6.2
gyp info using node@6.3.1 | win32 | x64
6.3.1
node 6.3.1
npm 5.3.0

D:\test\node_modules\oracledb\lib\oracledb.js:38
    throw err;
    ^
Error: The specified procedure could not be found.
\\?\D:\test\node_modules\oracledb\build\Release\oracledb.node
    at Error (native)
    at Object.Module._extensions..node (module.js:568:18)
    at Module.load (module.js:458:32)
    at tryModuleLoad (module.js:417:12)
    at Function.Module._load (module.js:409:3)
    at Module.require (module.js:468:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> D:\test\\node_modules\oracledb\lib\oracledb
.js:35:19)
    at Module._compile (module.js:541:32)
    at Object.Module._extensions..js (module.js:550:10)
```

使用 strongloop /loopback CLI 时出现同样的错误。任何指针都会有所帮助

4

2 回答 2

0

我遇到了同样的问题。此错误与 oracle 客户端有关。

可能出现的问题:

  • 错误的 PATH 环境。多变的
  • 错误的 OCI_INC_DIR 和 OCI_LIB_DIR 路径
  • oracle 客户端版本错误(32 位与 64 位)。版本必须与节点版本相同

我的问题是oracle客户端的版本,所以我安装了另一个。我还修复了新 Oracle 客户端的 PATH 变量和 OCI_INC_DIR 和 OCI_LIB_DIR 路径,但仍然没有成功。

在我删除了两个 oracle 客户端并只安装了我需要的那个之后,问题就消失了。

结论:即使您指定了正确的 oracle 驱动程序的路径,安装程序也可以选择另一个,所以要小心。

于 2017-12-07T09:14:27.653 回答
0

已解决:c:\oracle\oracleinstant 客户端不在 Windows 上的 PATH 变量开头的问题

于 2017-08-19T05:45:09.163 回答