問題タブ [oracle-manageddataaccess]

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 に答える
976 参照

c# - .Net/C# - Oracle SQL のすべての変数がバインドされていない - 管理されたデータ アクセス

私は、Oracle の SQL のフレーバーに比較的慣れていません。これが次の例外を返す理由がわかりません。

Oracle.ManagedDataAccess.Client.OracleException (0x80004005): ORA-01008: すべての変数がバインドされていません

私は以下を試しました。parameters.add にコロン (':') を追加します。より少ない変数を使用して、null パラメーターを渡さないようにしました。

これがデータです。オブジェクトに解析され、各プロパティは文字列です。Oracle は厳密に型指定されたパラメーターを必要としますか? MS SQL Server で文字列を渡しても問題は発生しませんが、それは私の唯一の推測です。

  • 内部ID: 228IL
  • 低: 0
  • 高 0
  • 時間: 2018-01-29T13:05:26
  • ボリューム: 0
  • 終了:0
0 投票する
0 に答える
69 参照

c# - Oracle からのストアド プロシージャが制御を .NET プロセスに返さない

Oracle.DataAccess ライブラリを使用して Oracle データベースに接続する C# で開発された .NET プロセスが 1 つあります。私のプロセスはいくつかの大規模な更新を行い、その後、Oracle でストアド プロシージャを呼び出して何らかの処理を行う必要があります。この手順が完了するまでに 1.5 時間かかりました (この手順に関連付けられたコントロール テーブルがあるため、完了したことがわかります) が、C# コードはデバッグ中に同じ行に残ります... 何らかのタイムアウトになる可能性がありますか? 昨日プロセスを実行したままにして、今日到着したとき、プロセスはまだ実行されており(14時間)、ストアドプロシージャは1.5時間で終了しました...)。

これを制御する方法はありますか?

プロシージャを呼び出すメソッド:

コードの実行は cmd.ExecuteNonQuery(); で停止します。

ありがとう!

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

sql - Oracle パラメータ化更新クエリ c#

動作するはずですが、動作しません。

他の人を紹介しましたが、理由が見つかりませんでした。

前もって感謝します。

じゅん

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

c# - SYS_REFCURSOR と Entity Framework Model を返す Oracle ストアド プロシージャの問題

SYS_REFCURSOR オブジェクト型を返す多数のストアド プロシージャを含む Oracle データベース (12.1 クライアント ビットを備えた 11.2 サーバー側) があります。

Visual Studio 2017 (15.6.3) および Oracle Managed DataAccess クライアント (12.1) 内の Add new ADO.NET Entity Data Model ウィザードを使用して、この一連の手順をインポートしようとしました。しかし、これらのストアド プロシージャにアクセスすると、次のような例外が発生します。 PLS-00306: wrong number or types of arguments in call to 'my_procedure'

このような Oracle ストアド プロシージャの例は、次のようになります。

生成されたモデル xml は次のようになります。

生成された C# コードは次のようになります。

Oracle DataAccess API を手動で呼び出して少し遊んだところ、次のコードが機能しました。

理想的には、ストアド プロシージャにアクセスするための正しい C# コードを生成する自動化されたプロセスが必要です。これを修正する最も実用的な方法は何ですか?