5.4 Java ストアドプロシジャ,Java ストアドファンク
Java はプラットフォームに依存しない言語です。したがって,Java で作成したプログラムは,外部 Java ストアドルーチンを提供する異種 DBMS でも動作できます。
4.デバッグが簡単です
SQL ストアドプロシジャ,SQL ストアドファンクションのデバッグをする場合,実際にサーバ側で動 作させる必要があります。これに対して,外部 Java ストアドルーチンのデバッグは,クライアント側 に Java 言語のデバッガを用意することで,データベースアクセスを含めたデバッグができます。
5.4.3 システム構成(Java 仮想マシンの位置づけ)
HiRDB システムでの Java 仮想マシンの位置づけを次の図に示します。
図 5‒4 HiRDB システムでの Java 仮想マシンの位置づけ
注※1
Java 仮想マシンは JRE(Java 実行環境)に含まれています。各プラットフォームのベンダのホームペー ジから,JRE についての情報を取得し,JRE を入手してください。
注※2
JDBC ドライバは HiRDB が標準提供しています。
JRE の入手方法,及びシステム構成例については,マニュアル「HiRDB Version 9 システム運用ガイド」
を参照してください。
5.4.4 外部 Java ストアドルーチンを実行するためには
事前に JDBC ドライバをインストールしておく必要があります。HiRDB クライアントのインストール時 に,JDBC ドライバを選択するとインストールされます。
Java ストアドプロシジャ,Java ストアドファンクションを使用する場合の環境設定方法については,マ ニュアル「HiRDB Version 9 システム運用ガイド」を参照してください。
5.4.5 外部 Java ストアドルーチンの実行手順
外部 Java ストアドルーチンを実行するときの手順を次に示します。
〈手順〉
1. 外部 Java ストアドルーチンの作成 2. JAR ファイルの新規登録
3. 外部 Java ストアドルーチンの定義 4. 外部 Java ストアドルーチンの実行
外部 Java ストアドルーチンの作成から実行までの流れを次の図に示します。
5 SQL によるデータベースアクセス
143
図 5‒5 外部 Java ストアドルーチンの作成から実行までの流れ
(1) 外部 Java ストアドルーチンの作成
手続き又は関数を Java で記述し,その Java プログラムをコンパイルします。コンパイルすると,Class ファイルが作成されます。クライアント側の Java 仮想マシンで Class ファイルのテスト・デバッグをし て,その後,Class ファイルから JAR ファイルを作成します。
(2) JAR ファイルの新規登録
JAR ファイルを HiRDB へ新規登録します。
HiRDB 管理者が新規登録する場合 pdjarsync コマンドを使用します。
UAP 開発者が新規登録する場合
埋込み言語の INSTALL JAR 又は REPLACE JAR を使用します。これらの SQL を pddef 又は UAP に記述して実行します。
(3) 外部 Java ストアドルーチンの定義
JAR ファイルから外部 Java ストアドルーチンを定義します。外部 Java ストアドルーチンを定義する場合 は,CREATE PROCEDURE 又は CREATE FUNCTION を使用します。
(4) 外部 Java ストアドルーチンの実行
ストアドプロシジャ,ストアドファンクションの実行と同様に,CALL 文又は関数呼出しを指定して SQL を実行します。CALL 文を実行すると,Java メソッドが Java ストアドプロシジャとして実行されます。ま た,関数呼出しを実行すると,Java メソッドが Java ストアドファンクションとして実行されます。外部 Java ストアドルーチンは,サーバ側の Java 仮想マシンで実行されます。
5 SQL によるデータベースアクセス
145