問題タブ [sys-refcursor]
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.
sql - 即時実行による参照カーソル
ref_cursor で結果を取得したいのですが、それができません。
即時実行を使用して ref_cursor で結果を取得する方法を教えてください
java - Oracle ストアド プロシージャから Java にデータを渡す
Oracle データベースに基づく大規模システム用の新しい Web インターフェイスを作成します。すべてのビジネス ルールは既にPL/SQL
ストアド プロシージャでコーディングされており、できるだけ多くのコードを再利用したいと考えています。既存のビジネス ルールを組み合わせて最終的な結果データセットを返す新しいストアド プロシージャをいくつか作成します。
これをデータベース レベルで実行して、java-db ラウンド トリップを回避します。インターフェイス レイヤーは Java で記述されるため (GWT を使用したい)、Oracle ストアド プロシージャから Java サービス側にデータを渡す方法が必要です。データは、例えば、特定のアイテムのプロパティのセット、または特定の基準を満たすアイテムのリストである可能性があります。誰かがこれを行うための好ましい方法をお勧めしますか?
次の 2 つのシナリオのいずれかを検討しています。
オブジェクトとオブジェクトのリストを渡す (スキーマ レベルで定義された DB オブジェクト タイプ)
を渡す
sys_refcursor
両方のアプローチが「実行可能」であることを確認しました。問題は、設計上の決定、ベスト プラクティス、起こりうるメンテナンスの問題、柔軟性などです。
ヒントをいただければ幸いです。
c# - タイプSYS_refcursorの出力パラメーターを使用する
私のデータベースには、SYS_REFCURSORタイプのOUTPUTパラメータを持つストアドプロシージャがあります。アプリケーション側はC#で記述されています。このプロシージャの出力パラメータを次のようなDatatableに割り当てることはできますか?
oracle - プロシージャーでの関数出力としてのカーソルの使用 (Oracle)
私は解決策を見つけようとしていますが、いつも何かが間違っています。だから私の問題は何ですか:
私は機能を持っています:
ストアド プロシージャ内でこの関数を使用したい:
そして、「open cur_contract for fun1(p_param1);」という行の式が間違ったタイプであるというエラーが表示されます。
手順を機能させるには何を変更すればよいですか?
c# - ref カーソル パラメータを介して返された結果セットの列情報を取得する
タイプ「SYS_REFCURSOR」の OUT パラメータを介して結果セットを返す Oracle のストアド プロシージャがあります。
この結果セットの列情報を ADO.NET 経由で取得する必要があります。パラメータ (OracleParameter.OracleDbType = OracleDbType.ReCursor など) を作成し、「OracleCommand.ExecuteReader」(CommandBehavior.SchemaOnly) を呼び出して、ストアド プロシージャを実行します。次に、結果のリーダーで「reader.GetSchemaTable」を呼び出して、結果セットのスキーマを記述する DataTable を取得します。
私の問題は、結果セットの各列の情報が不完全なことです。列のOracleデータ型に関する情報はありません(列名、null可能性、長さなどはわかります)。取得する型情報のみが、列をマップできる CLR 型です。
OUT参照カーソルを介して返された結果セットの列情報を取得するためのより良い方法がありますか?
oracle - SQL2008 からリンク サーバー経由で Oracle プロシージャにテーブルまたはテーブル値パラメーターを渡すにはどうすればよいですか?
参照カーソルを介して値リストを受け入れる Oracle ストアド プロシージャがあります。この Oracle データベースは、別の SQL Server 2008 インスタンスでリンク サーバーとして設定されます。
SQL 内からこのプロシージャを使用して、テーブル、行、またはテーブル値パラメーターを渡すにはどうすればよいですか?
oracle - Oracle refcursor の再利用 (再オープン)
行のリスト(CustomersList)を含むものと、各行の列名(PriceGroups)を含むものとの2つのOracle refcursorsがあります。各行と列をループして、各行/列の交点を更新する必要があります。列カーソルを再配置して、最初の列から何度も開始するにはどうすればよいですか。テーブルは次のようになります
plsql - ProcでOracleカーソルを使用して返しますか?
2つのカーソルを返すパッケージに取り組んでいます。1つのカーソルは、数値の主キーを持つ項目のリストです。もう1つのカーソルは、アイテムに関連付けられているファイルのリストです。
これまでのコード:
私が問題に直面している領域:
- table(cast(cursor))セクションでキーワードが見つからないというエラーが発生する
- コード内のカーソルにそのままアクセスできますか、それとも内部変数にコピーする必要がありますか?sys_refcursorタイプの変数と「setv_cursor:= o_results」を作成しようとしましたが、オプションが見つからないか無効なエラーが発生しました。
c# - C#-Refcursorを返すストアドプロシージャから挿入コマンドを生成するOracleCommandBuilder
CommandBuilderは、INSERT、UPDATE、およびDELETEコマンドを作成する必要をなくすのに役立つ非常に便利なクラスです。CommandTypeがTextの場合、非常に簡単に実行できます。ただし、CommandTypeがStoredProcedureであり、pocedureがSYS_REFCUSORを返す場合、SQLの生成に失敗します。sotredプロシージャを使用して、Oracleデータベースからデータを取得しようとしています。選択は簡単です。(出力パラメーター(この場合はカーソルが返されます)をIDataReaderに割り当てます)。CommandBuildがカーソルを返すストアドプロシージャを使用して更新SQLを生成することはまだ可能ですか?または、これらすべてのSQLを手動で作成する必要がありますか。(ストアドプロシージャを使用して結果を返すことができるため、MS SQL Serverが恋しいです。)
plsql - 参照カーソルとしてのPL/SQL静的カーソル変数
SYS_REFCURSORを取得してJSONに変換するプロシージャがあります。
上記を呼び出すプロシージャでは、CURSORを通常として定義し、それをREFCURSORとして提供しようとしています。
PLS-00361を受け取っています。
OPEN FOR構文を使用できることは理解していますが、カーソルを他の場所で使用する必要があり、複製が好きではありません。
何かアドバイス?
よろしく、ローレンス。