ストアドプロシージャのインポート¶
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
ステートメントと同じです。