PL/SQLの弱参照カーソルが必要な理由
前のチュートリアルでは、強力な参照カーソルを使用して、さまざまな列からさまざまなデータ型のデータをフェッチする方法を学習しました。強力な参照カーソルには、レコードデータ型のみになり得る固定の戻り型があるという制限があります。ただし、固定リターンタイプを使用すると、強力なrefカーソルにより、アプリケーション開発でエラーが発生しにくくなります。ただし、これには、ユーザー定義のレコードデータ型を作成するための追加の手順が必要です。
では、ユーザー定義のレコードデータ型を作成する必要のない、参照カーソルを使用して異なるデータ型のデータをフェッチする別の方法はありませんか?リターンタイプが固定されていない参照カーソルを作成できませんか?このブログでこれらの質問の答えを見つけましょう。
OracleデータベースのPL/SQL弱参照カーソルとは何ですか?
戻り型が固定されていない参照カーソルは、弱参照カーソルと呼ばれます。
弱参照カーソルを任意のSELECTステートメントで使用できますか?
はい、できます。弱い参照カーソルには強い参照カーソルのような固定の戻りタイプがないため、すべてのタイプのSELECTステートメントに対して開かれています。これにより、他のカーソルと比較して最も頻繁に使用される参照カーソルにもなります。
私は今あなたが上記の質問に対する答えを得たと思います。 PL / SQL弱参照カーソルは、さまざまなデータ型のデータをフェッチするための代替方法です。弱参照カーソルには固定の戻り型がないため、個別のレコードデータ型を作成する必要はありません。すべての疑問を解消したので、OracleDatabaseでPL/SQLの弱い参照カーソルを作成する方法を学習するのに役立つ例を見てみましょう。
弱参照カーソルの構文
TYPE ref_cursor_name IS REF CURSOR;
例:Oracleデータベースで弱参照カーソルを作成する方法
SET SERVEROUTPUT ON; DECLARE /*Declare Weak Ref Cursor*/ TYPE wk_RefCur IS REF CURSOR; /*Declare Cursor Variable of ref cursor type*/ cur_var wk_RefCur; /*Declare two "Anchored Datatype Variable" for holding data from the cursor*/ f_name employees.first_name%TYPE; emp_sal employees.salary%TYPE; BEGIN OPEN cur_var FOR SELECT first_name, Salary FROM employees WHERE employee_id = 100; FETCH cur_var INTO f_name, emp_sal; CLOSE cur_var; DBMS_OUTPUT.PUT_LINE (f_name ||' '||emp_sal); END; /
先に進み、このプログラムを実行して、出力がどうなるかを確認してください。必要に応じて、GITリポジトリからこのスクリプトをダウンロードすることもできます。リンクは次のとおりです[スクリプト/Gitリポジトリ]
ビデオを見てよりよく学ぶ場合は、PL/SQL弱参照カーソルに関するビデオチュートリアルを次に示します。
これは、OracleデータベースでPL/SQL弱参照カーソルを作成する方法に関するチュートリアルです。ですから、必ずYouTubeチャンネルに登録してください。次のチュートリアルでは、OracleDatabaseのSysRefCursorとは何かを学習します。ありがとう、そして素晴らしい一日を!