例: パラメータ型のデフォルト マッピングの使用
以下に、SQL INTEGER型のパラメータをJava intプリミティブにマッピングする外部ストアド プロシージャのJavaメソッドの実装方法を示すコードの一部を示します。
public class region { public static void newRegion( int[] regionID ) { regionID[0] += 1; } ... }
領域クラスのJARファイルがregion.jarを呼び出した場合、以下の文は、region.jarとリージョンクラスをデータベースに登録し、JARファイルに対してJarXSPと呼ばれるSQL識別子を作成します。
CALL SQLJ.INSTALL_JAR('CJ!C:\xspsrc\region.jar','JarXSP',0);
外部ストアド プロシージャを定義する、対応するCREATE PROCEDURE文は以下のようになります。
CREATE PROCEDURE NewRegionXSP (INOUT regionID INTEGER) LANGUAGE JAVA NO SQL PARAMETER STYLE JAVA EXTERNAL NAME 'JarXSP:region.newRegion';
例: パラメータ型のデフォルト マッピングの上書き
以下に、SQL INTEGER型のパラメータをjava.lang.Integerクラスにマッピングする外部ストアド プロシージャのJavaメソッドの実装方法を示すコードの一部を示します。
public class region { public static void newRegion( Integer[] regionID ) { if (regionID[0] != null) regionID[0] = regionID[0].intValue() + 1; } ... }
領域クラスのJARファイルがregion.jarを呼び出した場合、以下の文は、region.jarとリージョンクラスをデータベースに登録し、JARファイルに対してJarXSPと呼ばれるSQL識別子を作成します。
CALL SQLJ.INSTALL_JAR('CJ!C:\xspsrc\region.jar','JarXSP',0);
外部ストアド プロシージャを定義する、対応するCREATE PROCEDURE文は以下のようになります。
CREATE PROCEDURE NewRegionXSP (INOUT regionID INTEGER) LANGUAGE JAVA NO SQL PARAMETER STYLE JAVA EXTERNAL NAME 'JarXSP:region.newRegion(java.lang.Integer[])';