問題タブ [ref-cursor]
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 - SQLナビゲーターでref_cursorなしでストアドプロシージャを実行する
私はOracleとSQLナビゲーターが初めてです。ストアド プロシージャを実行してその結果を確認する方法が見つからないようです。プロシージャは次のように作成されます。このプロシージャを SQL ナビゲーターで実行するにはどうすればよいですか。SQLナビゲーター6.7を使用しています。また、proc が out ref-cursor を使用していることにも注意してください。
PS:これは重複していると確信しています。見つからないので、正しい場所にのみリダイレクトしていただければ幸いです。
sql - Oracle 関数 - 返された ref_cursor からフェッチ - ORA-01001: 無効なカーソル
関数から返されたときに、PL/SQL で開いている ref_cursor からのフェッチに問題があります。return ステートメントの代わりに関数の本体にまったく同じ fetch ステートメントを入れると、正常に動作します。
匿名の plsql ブロックから呼び出すと、「ORA-01001: カーソルが無効です」というエラーが表示されます。
ただし、匿名ブロックを実際の関数に入れると、すべて機能します。下記参照:
私は周りを読んで、私がここでやっていることをしている人々の例をいくつか見つけたので、私の知る限り、これはうまくいくはずです。例えば。https://community.oracle.com/thread/888365
誰かが私がここで間違っていることを理解するのを手伝ってくれますか?
c# - C# - Oracle ストアド プロシージャは行なしで RefCursor を返します
ストアド プロシージャの呼び出しでは 7 行が返されますが、Oracle Managed Data Access を介して呼び出した場合は返されません。
コード :
ストアド プロシージャ
実行時 : 警告なし、エラーなし (すべてのパラメーターが有効)
私の問題:( 予想される7行ではなく)任意の行が返されますが、スキーマを取得します(列名は正しいです)。
環境 :
- Windows x64
- .NET フレームワーク: 4.0
- Oracle クライアントがインストールされている (v11.2) が必要ではない
- Oracle データ プロバイダー .NET : Oracle.ManagedDataAccess (v121.1.2)
java - Java で PostgreSQL から setof refcursor を返すプロシージャにアクセスするには?
PostgreSQL から setof refcursor を返すプロシージャにアクセスする必要があります。
最初のオブジェクトにはアクセスできますが、残りのオブジェクトではなく残りのオブジェクトにはアクセスできません。
これにより、最初の refcursor 値が得られますが、2 番目の refcursor を使用しようとすると、次の行を使用してエラーが発生します。
エラーが発生しています。また試しました:
これも機能しません。手順の例は次のとおりです。
2 番目のオブジェクトにアクセスする方法を教えてください。
oracle - Oracle 関数から参照カーソルを返す
エラーが表示されます - PLS-00382 式が間違った型です。
参照カーソルを出力として取得したい。どうすればこれができるか教えてください
誰でもこの問題を解決するのを手伝ってもらえますか?
plsql - ストアド プロシージャをテーブルに変換して、select ステートメントで使用できるようにする
を返す既存のストアド プロシージャを使用する必要がありますREF CURSOR
。resultset
それを一時テーブルに挿入する必要があります。
手順の仕様は次のとおりです。
resultset
このプロシージャをテーブルに挿入するにはどうすればよいですか。
oracle - Oracle 11g のプロシージャで REFCURSOR 変数を OUT パラメータとして出力する際のエラー
Oracle (Oracle 11.1.0.7.0) を使用しています。パッケージ MyPackage 内にサンプル ストアド プロシージャを作成しました。この SP を作成するために、ユーザー「DBA_USER」としてログインしました。
を使用してこのSPを呼び出そうとしました
しかし、Oracle SQL Developerで次のエラーがスローされます
EDIT1:
T_CURSOR は次のタイプです。
postgresql - 関数からのテキスト出力を新しいクエリとして使用する
@Erwin Brandstetter と @Craig Ringer によって支援された以前のケースから継続して、次のようになるようにコードを修正しました。私の関数はテーブルではなくmyresult()
now を出力することに注意してください(実際、前のケースで指摘されたように、テーブル オブジェクトを出力する意味はありません。全体の目的):text
電話:
上記の手順を実行すると、基本的にクエリであるテキスト文字列が得られます。簡単にするために、次に「oneliner-output」と呼びます。
「oneline-output」は次のようになります (ここにある 1 つの出力セルからコピー/貼り付けするだけです)。
- ステートメントの両側の二重引用符が
myresult()
出力の一部であることに注意してください。私はそれらを追加しませんでした。
「oneliner-output」を作成し、それを実行する単一の関数を構築することを考えるという問題のある考えを、今でははるかによく理解しています。「oneliner-output」を新しい Postgres クエリ ウィンドウにコピー/貼り付けして、通常のクエリとして実行し、データ出力ウィンドウで目的の列と行を受け取ることができます。
ただし、この手順を自動化して、コピー/貼り付けの手順を回避したいと考えています。Postgres で、関数text
から受け取った出力 (「oneliner-output」) を使用しmyresult()
て実行する方法はありますか? myresult()
の出力を受け取り、それをクエリの実行に使用する2 つ目の関数を作成できますか?
これらの行に沿って、次のスクリプト (以下) が機能し、実際に目的の列と行を正確に出力することを知っています。
正しい微調整を行った後、次のスクリプトのようなものが機能する可能性があるのではないかと考えていました。方法はわかりません。
/li>
refcursor を使ってみる
電話:
この手順は実際に機能し、目的の列と行を吐き出しますが、ここでも正確な SELECT ステートメントを提供する必要があります。
私は基本的に、関数の出力として代わりに提供できるようにしたいと考えていmyresult()
ます。このようなもの:
電話:
spring - Ref カーソルとスカラー値を返すストアド プロシージャ
私たちのアプリケーションには、ストアド プロシージャで 1 つの Ref Cursor と 1 つのスカラー パラメータ、つまりステータス コードを返すという要件があります。
現在、Spring API、つまり StoredProcedure および RowMapper クラスを使用しています。
ストアド プロシージャを実行できますが、execute メソッド呼び出しの後、Spring が RowMapper メソッド MapRow を呼び出しません。
以下は私のコードです
そして私の MultiMapperIOStoredProc コンストラクター。
私の executeStoredProc メソッド
これを機能させる方法についてのアイデア。