問題タブ [node-oracledb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
632 参照

protractor - oracledbを使用した分度器、oracle dbから値をフェッチした後、他の関数から値にアクセスできません

oracledb から値をフェッチし、必要な場所にその値を割り当てるための再利用可能な関数を作成しようとしています。

私のサンプルコードは以下です。//getTtalRwCnt.js

//spec.js

0 投票する
2 に答える
8501 参照

node.js - 'oracledb' Oracle クライアント ライブラリ エラー (エラー: NJS-045 およびその他のエラー)

コマンドを使用して、oracledb ライブラリをプロジェクト フォルダにインストールしました。

「npm i oracledb --s」

正常にインストールされ、プロジェクト内の「node_modules」フォルダーにあります。ダウンロードして開いた後、プロジェクトフォルダー内に「instantclient」フォルダーもあります。

プログラムを実行しようとすると、次のエラーが発生します。

オブジェクトで(internal/module.js:11:18)を必要とします。(c:\Users\tlobel\Documents\Install_1\node_modules\oracledb\index.js:1:80) Module._compile (module.js:652:30) でデバッガーが切断されるのを待っています... エラー: NJS- 045: Node.js 8.11.1 (win32、x64) 用の oracledb アドオン バイナリをロードできません oracledb.js:68 c:\Users\tlobel\Documents\Install_1\node_modules\oracledb\build\Release\oracledb. node DPI-1050: Oracle クライアント ライブラリはバージョン 11.2 以降である必要があります Node-oracledb のインストール手順: https://oracle.github.io/node-oracledb/INSTALL.html PATH に 64 ビットの Oracle クライアント ライブラリが必要です環境変数. このコンピュータに Oracle データベースがない場合は、 http: //www.oracle.com/technetwork/topics/winx64soft-089540.htmlから Instant Client Basic または Basic Light パッケージをインストールしてください。クライアント ライブラリのバージョンが利用可能である必要があります

私のPATHは次のようになります。

PATH=C:\Python27\;C:\Python27\スクリプト; C:\Users\usr1\My Documents\Install_1\instantclient;C:\Program Files\nodejs\;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files \Git\usr\bin;C:\Users\usr1\Downloads\Git-2.16.2-64-bit;C:\Users\usr1\Downloads\VC_redist.x64;C:\Program Files\Microsoft VS Code\bin ;C:\Users\usr1\AppData\Roaming\npm

私のプロジェクトは次のフォルダーにあります: C:\Users\usr1\My Documents\Install_1

VS再配布可能ファイルもダウンロードしましたが、どこに置くべきかわかりません...これが機能するためにどの問題を解決する必要があるか知っている人はいますか?

回答ありがとうございます。

0 投票する
1 に答える
928 参照

oracle11g - ORA-02396: node-oracledb で最大アイドル時間を超過しました

バックエンドでoracle を使用node-oracledbしており、接続プールを使用してパフォーマンスを向上させたいと考えています。

次のような接続を使用します。

現在、定期的に次のエラーが発生しています。

ORA-02396: 最大アイドル時間を超えました

IDLE_TIMEセキュリティ上の理由からおそらく に設定されていないに関係していると仮定しますUNLIMITED(正直に言うと、これはよくわかりません)。

接続を維持する他の方法はありますか? つまり、nodejs はシングル スレッドであるため、定期的にダミー クエリを単純に実行することはできませんか?

0 投票する
2 に答える
605 参照

node.js - 「on data」イベントから oracle-db データを「パイプ」する方法

私は node-oracledb を数か月使用してきましたが、これまでに必要だったことを達成することができました。

私は現在、1 回の呼び出しで約 200 万行のデータを返す可能性のある検索アプリに取り組んでいます。ブラウザとサーバーから切断されないようにするために、queryStream を試して、クライアントに一定のデータ フローが返されるようにしようと考えました。

queryStreamの例をそのまま実装したところ、数十万行で問題なく動作しました。ただし、返された行が 100 万を超えると、Node はメモリ不足になります。クライアントとサーバーの両方のログ イベントをログに記録して監視することで、送受信された行に関して、クライアントがサーバーよりもかなり遅れていることがわかります。つまり、大量のデータをバッファリングしているため、ノードが倒れているように見えます。

この時点で、selectstream の実装は Express 経由で呼び出される req/res 関数内にあることに注意してください。

データを返すには、次のようにします....

ストリームとパイプがフローにどのように役立つかについて読んできたので、私ができるようにしたいのは、クエリからの結果を a) フローを支援し、b) できるようにすることです。クライアントに送り返す前に、結果を他の関数にパイプします。

例えば

結果をパイプできるようにする解決策または例を見つけるのに数時間費やしましたが、行き詰まっており、助けが必要です。

明らかな何かが欠けている場合は申し訳ありませんが、ノード、特にストリームについてはまだ把握しています。

前もって感謝します。

0 投票する
1 に答える
569 参照

node.js - oracledb npm package NJS-045 パスが更新されたときにエラーが発生しました

「npm i oracledb」を介して「oracledb」パッケージをインストールし、プロジェクトで必要とし、index.js ファイルから接続を取得しようとしています。NJS-045 エラーが発生しています。

エラー: NJS-045: Node.js 8.0.0 (win32、x64) の oracledb アドオン バイナリを読み込めません\oracledb DPI-1050: Oracle クライアント ライブラリはバージョン 11.2 以降である 必要があります Node-oracledb のインストール手順: https://oracle.github.io/node-oracledb/INSTALL.html PATH 環境変数。このコンピュータに Oracle データベースがない場合は、 http: //www.oracle.com/technetwork/topics/winx64soft-089540.htmlから Instant Client Basic または Basic Light パッケージをインストールしてください。クライアント ライブラリのバージョンが利用可能である必要があります。

ただし、すでにインスタント クライアントをダウンロードして展開し、PATH に「C:\oracle12\instantclient_12_2」として設定しています。役に立たなかった LD_LIBRARY_PATH 環境変数を設定しようとしました。また、このコンピューターには TOAD for Oracle がインストールされています。これは、これに影響を与える可能性があると私が考えることができる唯一の他のことです。何か案は?