SnowConvert AI - Oracle - CREATE PROCEDURE¶
OracleのSnowflake Snowスクリプトへのプロシージャ作成
説明¶
注釈
わかりやすくするため、出力コードの一部を省略しています。
プロシージャとは、 PL/SQL ステートメントのグループで、名前で呼び出すことができます。呼び出し仕様(コールスペックと呼ばれることもあります)は、Javaメソッドまたは第3世代言語(3GL)ルーチンを宣言して、 SQL および PL/SQL から呼び出せるようにします。呼び出し仕様は、呼び出しが行われたときにどのJavaメソッドを呼び出すかをOracleデータベースに伝えます。また、引数と戻り値の型変換もデータベースに指示します。Oracle SQL 言語リファレンスプロシージャの作成。
Oracleのプロシージャ作成の詳細情報については、 こちら をご覧ください。
Oracleのプロシージャ作成構文¶
Snowflakeのプロシージャ作成の詳細情報については、 こちら をご覧ください。
Snowflakeのプロシージャ作成構文¶
サンプルソースパターン¶
1.基本プロシージャ¶
Oracle¶
Snowスクリプト¶
2.異なるパラメーターを持つプロシージャ¶
Oracle¶
Snowスクリプト¶
出力パラメーター¶
Snowflakeではプロシージャ内で出力パラメーターを使用することができません。この動作をシミュレートする方法として、変数を宣言し、プロシージャの終了時にその値を返すことができます。
デフォルト値のパラメーター¶
Snowflakeでは、プロシージャのパラメーターにデフォルト値を設定することはできません。この動作をシミュレートする方法としては、デフォルト値を持つ変数を宣言するか、プロシージャをオーバーロードすることが考えられます。
3.追加設定によるプロシージャ¶
Oracle¶
Snowスクリプト¶
4.基本ステートメントによるプロシージャ¶
Oracle¶
Snowスクリプト¶
5.RETURN ステートメントが空のプロシージャ¶
Oracleのプロシージャでは、プロシージャの実行を終了するために空の RETURN ステートメントを持つことができます。Snowflake Scriptingでは、プロシージャは RETURN ステートメントを持つことができますが、値を持つ必要があります。デフォルトでは、空の RETURN ステートメントはすべて NULL 値で変換されます。
Oracle¶
Snowflakeスクリプト¶
出力パラメーターを持つプロシージャの RETURN ステートメント¶
出力パラメーターを持つプロシージャでは、Snowflake Scriptingの出力パラメーターをシミュレートするために、空の RETURN ステートメントで NULL 値の代わりに OBJECT_CONSTRUCT が使用されます。
Oracle¶
Snowflakeスクリプト¶
6.DEFAULT パラメーターを持つプロシージャ¶
DEFAULT パラメーターは、値が渡されない場合、名前付きパラメーターをデフォルト値で初期化することができます。
Oracle¶
Snowflakeスクリプト¶
既知の問題¶
1.サポートされていない OUT パラメーター¶
Snowflakeプロシージャには、出力パラメーターのネイティブオプションがありません。
2.サポートされていないOracleの追加設定¶
以下のOracle設定および句は、Snowflakeプロシージャではサポートされていません。
sharing_clausedefault_collation_optioninvoker_rights_clauseaccessible_by_clausejava_declarationc_declaration