Perl DBI モジュールは動的 SQL しかサポートしていないため、 Perl DB2 アプリケーションではホスト変数は使用しないでください。 SQL 照会から結果を戻すには、以下のステップを実行します。
ステップ 1. | Perl を使ったデータベースへの接続で説明されているようにして、データベース・ハンドルを作成します。 |
ステップ 2. | 作成したデータベース・ハンドルからステートメント・ハンドルを作成します。たとえば、ストリング引き数として SQL ステートメントと一緒に prepare を呼び出し、データベース・ハンドルからステートメント・ハンドル $sth を戻すことができます。以下に示す Perl ステートメントは、その例です。
my $sth = $dbhandle->prepare( 'SELECT firstnme, lastname FROM employee ' ); |
ステップ 3. | ステートメント・ハンドルで execute を呼び出して、 SQL ステートメントを実行します。 execute が正常に呼び出されると、 結果セットがステートメント・ハンドルに関連付けられます。たとえば、以下の Perl ステートメントを使用すると、前の例で準備したステートメントを実行できます。
#Note: $rc represents the return code for the execute call my $rc = $sth->execute(); |
ステップ 4. | fetchrow() への呼び出しを使用して、ステートメント・ハンドルに関連付けられた結果セットから行を取り出します。 Perl DBI は、列ごとに値を 1 つ指定した配列として行を戻します。たとえば、以下の Perl ステートメントを使用すると、前の例にあるステートメント・ハンドルからすべての行を戻すことができます。
while (($firstnme, $lastname) = $sth->fetchrow()) { print "$firstnme $lastname\n"; }
|