SnowConvert AI :Oracle HELPERS¶
このセクションでは、Snowflakeスクリプトでネイティブにサポートされていない一部のOracle機能と同等の機能を実現するために使用されるヘルパー関数やプロシージャを紹介します。
一括カーソルヘルパー¶
注釈
また、[デフォルト FORALL 変換](README.md#forall)にも興味深いかもしれません。
カーソルは、カーソルの状態に関するさまざまな情報を持つ OBJECT でシミュレートされます。カーソルのクエリの結果セットを格納する仮テーブルが作成されます。
これらのプロシージャのほとんどは、カーソルの状態を更新した新しいオブジェクトを返します。
INIT_CURSOR¶
この関数は、基本的なカーソル情報を持つ新しいオブジェクトを初期化します
OPEN_BULK_CURSOR¶
These procedures create a temporary table with the query of the cursor. An optional overload exists to support bindings.
CLOSE_BULK_CURSOR¶
このプロシージャは、カーソルの結果セットを格納していた仮テーブルを削除し、カーソルのプロパティを初期状態にリセットします。
FETCH ヘルパー¶
Due to Oracle being capable of doing the FETCH statement on different kind of scenarios, multiple procedures with overloads were created to handle each case. These helpers save the fetched values into the RESULT property in the CURSOR object.
Some of the overloads include variations when the LIMIT clause was used or not. Other overloads have a COLUMN_NAMES argument that is necessary when the FETCH statement is being done into a variable that has or contains records with column names that are different to the column names of the query.
FETCH_BULK_COLLECTION_RECORDS¶
これらのプロシージャは、 FETCH BULK が記録のコレクションに行われる場合に使用されます。
FETCH_BULK_COLLECTIONS¶
これらのプロシージャは、 FETCH ステートメントが1つまたは複数のコレクションに行われる場合に使用されます。列はこの FETCH 操作で指定されるので、特定の COLUMN_NAMES に対するオーバーライドは必要ありません。
FETCH_BULK_RECORD_COLLECTIONS¶
これらのプロシージャは、 FETCH BULK がコレクションの記録に行われる場合に使用されます。