ストアドプロシージャのインポート¶
CREATE PROCEDURE ステートメントは、新しいストアドプロシージャを Virtual DataPort サーバーに追加します。
CREATE [OR REPLACE] PROCEDURE <name:identifier>
CLASSNAME <className:literal>
[ CLASSPATH <classPath:literal> ]
[ JARS <jar name:literal> [, <jar name:literal>]* ]
[ FOLDER = <literal> ]
[ DESCRIPTION = <literal> ]
[ CHECK_INDIRECT_ACCESS { ON | OFF} ]
CLASSNAME: ストアドプロシージャを実装する Java クラスの名前。このクラスは Virtual DataPort サーバーにロードされる必要があります (管理ガイドの「 拡張機能のインポート 」のセクションを参照)。
CLASSPATH: プロシージャの Java クラスが含まれている jar ファイルのパスのリスト。このパラメータを使用することはできますが、jar ファイルを Virtual DataPort サーバーにインポートしてから、それらを JARS 句から参照することをお勧めします。そうすると、特定の場所に存在する jars に依存することがなくなります。
JARS: Virtual DataPort サーバーにアップロードされ、このプロシージャが依存する jar ファイルのリスト。
CHECK_INDIRECT_ACCESS: このオプションが値 ON で定義されている場合、ビューの INDIRECT_ACCESS 権限をチェックします (この権限がサーバーレベルで有効な場合のみ)。
OR REPLACE 修飾子を使用すると、指定された名前のプロシージャが存在する場合、それを新しいプロシージャに置き換える必要があります。これにより、プロシージャを使用する派生ビューのスキーマとクエリ機能が再計算されます。
作成されたストアドプロシージャは、 ALTER PROCEDURE ステートメントを使用して変更できます。
ALTER PROCEDURE <name:identifier>
[ CLASSNAME <className:literal> ]
[ CLASSPATH = <classPath:literal> [<classPath:literal> ]* ]
[ JARS <jar name:literal> [, <jar name:literal>]* ]
[ CHECK_INDIRECT_ACCESS { ON | OFF} ]
CLASSNAME 句および CLASSPATH 句の意味は、 CREATE PROCEDURE ステートメントと同じです。
