回答編集履歴
1
文章の流れが変だったので修正しました
test
CHANGED
@@ -1,14 +1,16 @@
|
|
1
|
-
Oracle Instant Client以外にもOracleクライアントがインストールされていませんか?
|
2
|
-
|
3
|
-
おそらくnpm oracledbでビルドに利用したoci.dllと実行時に使っているoci.dllが違うものと思われます。
|
4
|
-
|
5
|
-
|
6
|
-
|
7
1
|
Oracle Instant Clientのパスが通っていない場合は
|
8
2
|
|
9
3
|
`Error: The specified module could not be found.`
|
10
4
|
|
11
|
-
といったエラーになりますので。
|
5
|
+
といったエラーになりますので、何かしらのOracleのdllが参照されていると思います。
|
6
|
+
|
7
|
+
(bitが違う場合は明確なエラーメッセージですぐに原因がわかります^^)
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
Oracle Instant Client以外にもOracleクライアントがインストールされていませんか?
|
12
|
+
|
13
|
+
おそらくnpm oracledbでビルドに利用したoci.dllと実行時に使っているoci.dllが違うものと思われます。
|
12
14
|
|
13
15
|
|
14
16
|
|
@@ -42,6 +44,18 @@
|
|
42
44
|
|
43
45
|
|
44
46
|
|
47
|
+
oracledb周りは環境依存が強いので、
|
48
|
+
|
49
|
+
自分は各OS、アーキテクチャ(bit)、nodeバージョンによってビルドしたモジュールを複数用意し、
|
50
|
+
|
51
|
+
実行時にrequireしています。
|
52
|
+
|
53
|
+
```javascript
|
54
|
+
|
55
|
+
const oracledb = require(`./oracledb${info.bit}-${info.os}-node${info.node_v}`);
|
56
|
+
|
57
|
+
```
|
45
58
|
|
46
59
|
|
60
|
+
|
47
|
-
ちなみにOCI_INC_DIRとOCI_LIB_DIRに関しましてはnpmでoracledbをビルドする際に必要となるもので、実行する際には不要
|
61
|
+
ちなみにOCI_INC_DIRとOCI_LIB_DIRに関しましてはnpmでoracledbをビルドする際に必要となるもので、実行する際には不要となります。
|