問題タブ [oraclecommand]

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

.net - OracleCommand タイムアウト

OracleCommand.CommandTimeoutのODP.NETドキュメントは言う

デフォルトは 0 秒で、時間制限はありません。

コマンドの実行が完了する前に、指定されたタイムアウト値が期限切れになると、コマンドはキャンセルを試みます。キャンセルが成功した場合、ORA-01013: user requested cancel of current operation というメッセージとともに例外がスローされます。コマンドがエラーなしで時間内に実行された場合、例外はスローされません。

複数の OracleCommand オブジェクトが同じ接続を使用している状況では、いずれかの OracleCommand オブジェクトのタイムアウト期限により、単一の接続での実行が終了する場合があります。OracleCommand のタイムアウト期限がそれ自体のコマンド実行のみをキャンセルするようにするには、その OracleCommand が CommandTimeout プロパティを 0 より大きい値に設定する場合、接続ごとに 1 つの OracleCommand を使用するだけです。

しかし、このようなコードは機能します:

OracleConnectionコマンドオブジェクトと の両方に同じオブジェクトをcmd1使用していますがcmd2cmd1すでにタイムアウトしています (予想どおり)。ただし、ドキュメントによると、cmd2実行しないでください。ただし、例外なく実行され、他の行が適切に更新されます。

0 投票する
4 に答える
6350 参照

c# - 「using」ブロックでは、閉じられた OracleConnection です

「using」ブロックでは、catch ステートメントで System.Environment.Exit(0) が発行された場合、OracleConnection が閉じられますか?

例:

レコードの検索中に例外がスローされた場合、実行を停止したい。

これを処理するより良い方法はありますか?

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

c# - スクリプト PLSQL は C# では実行されませんが、Oracle では問題ありません

このスクリプトを C# で実行しようとしました:

例外はありませんが、スクリプトは実行されていません。C# なしで SQL スクリプトを実行すると、機能します。currval NEW_PAP_OPERATOR_ID に問題があると思います。今のところ、C# で特別なことは何もしていません。

C# コード:

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

c# - Odac ORA-00911:無効な文字

ODACに接続するC#コードを書いています。クエリにエラーはなかったと思いますが、このエラーが発生しました。解決方法がわかりません。

これは私の質問です

ここで何が悪いのか誰かが理解できますか?

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

c# - OracleCommand Query Null パラメータの場所 - ORA-01008: すべての変数がバインドされていません

次のメソッドがあり、両方のパラメーターが null です

bool hasValue = HasValue(null,null);

このメソッドは、「ORA-01008: すべての変数がバインドされていません」というエラーで失敗します。

パラメータを 1 つだけ使用する場合は問題ありませんが、2 つ目を追加すると、「ORA-01008: すべての変数がバインドされていません」で失敗します。

前もって感謝します

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

.net - 列エイリアスでの OracleCommand の使用

クライアントが出力用に特定の列名を要求したという Oracle クエリを作成しようとしています。簡単に言えば、二重引用符を使用してoracle 列エイリアスを使用してクエリを記述します。(要求された列名が予約語であるため、引用符を使用していることに注意してください。)問題は、次のコードを使用してクエリを実行しようとすると
、エラーから を受け取っていることです。ORA-00911: invalid character

オラクルの引用演算子とc# 文字列リテラルのさまざまな反復を試しました(つまり、@"これは ""testing"" theliteral" と "this is \"testing\" theliteral")。

クエリは、これを実行したいという点で単純です。

これは、Oracle で直接実行すると機能しますが、.Net アプリケーション経由で実行することはできません。二重引用符をエスケープしてデバッガーでクエリを表示すると、次のようにフォーマットされていることがわかります。

それは明らかだと思いますか?バックスラッシュが Oracle エラーの原因になっていることを確認しましたが、これを回避するにはどうすればよいですか?

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

c# - OracleCommand を使用して挿入すると、無効な変数名/番号のエラーが発生する

C# を使用してテーブルにレコードを挿入しようとすると、次のエラーが発生します。

私のコード:

私のテーブル構造:

テーブルに正常に挿入できます手動で試してみたところ、

私も試してみましint intLogID = 0;cmd.Parameters.Add("log_id", OracleType.Number).Value = intLogID;

またInt32、ナンバーバインディングの組み合わせとintバインディングInt32の組み合わせがあります。

しかし、それでも同じエラーが発生します。何が問題なのですか?

0 投票する
0 に答える
396 参照

odp.net - ADO.net でコマンドと接続オブジェクトを再利用することはどのくらい効率的ですか?

2 つの異なる Oracle データベースに次々に接続する必要があるという特定の要件があります。新しい接続オブジェクトとコマンド オブジェクトを作成することは理にかなっていますか、それとも以下のように再利用する必要がありますか? (これが機能するかどうかはわかりません-ここにいくつかの擬似コードがあります)

すべての批判を歓迎します。