maxdb_stmt_bind_result

maxdb_stmt::bind_result

(PECL maxdb >= 1.0)

maxdb_stmt_bind_result -- maxdb_stmt::bind_result結果を保存するために、変数をプリペアドステートメントにバインドする

説明

手続き型

maxdb_stmt_bind_result ( resource $stmt , mixed &$var1 [, mixed &$... ] ) : bool

オブジェクト指向型

maxdb_stmt::bind_result ( mixed &$var1 [, mixed &$... ] ) : bool

maxdb_stmt_bind_result() は、 結果セット内のカラムを変数に関連付ける (バインドする) ために使用されます。 データを取得するために maxdb_stmt_fetch() をコールすると、MaxDB クライアント/サーバープロトコルが、 バインドされたカラムのデータを指定した変数 var1, ... に保存します。

注意:

すべてのカラムは、maxdb_stmt_fetch() のコール前にバインドされなければならないことに注意しましょう。 バインド変数は、カラムの型に応じて自動的に対応する PHP 型に変換されます。

結果セットが部分的に取得された後であっても、カラムはいつでも バインド/再バインドできます。新しいバインド内容は、次に maxdb_stmt_fetch() がコールされた時点で反映されます。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

例1 オブジェクト指向型

<?php
$maxdb 
= new maxdb("localhost""MONA""RED""DEMODB");

if (
maxdb_connect_errno()) {
   
printf("接続に失敗しました: %s\n"maxdb_connect_error());
   exit();
}

/* ステートメントを準備します */
if ($stmt $maxdb->prepare("SELECT zip, name FROM hotel.city ORDER BY name")) {
   
$stmt->execute();

   
/* 変数をプリペアドステートメントにバインドします */
   
$stmt->bind_result($col1$col2);

   
/* 値を取得します */
   
while ($stmt->fetch()) {
       
printf("%s %s\n"$col1$col2);
   }

   
/* ステートメントを閉じます */
   
$stmt->close();
}
/* 接続を閉じます */
$maxdb->close();

?>

例2 手続き型

<?php
$link 
maxdb_connect("localhost""MONA""RED""DEMODB");

/* 接続を調べます */
if (!$link) {
   
printf("接続に失敗しました: %s\n"maxdb_connect_error());
   exit();
}

/* ステートメントを準備します */
if ($stmt maxdb_prepare($link"SELECT zip, name FROM hotel.city ORDER BY name")) {
   
maxdb_stmt_execute($stmt);

   
/* 変数をプリペアドステートメントにバインドします */
   
maxdb_stmt_bind_result($stmt$col1$col2);

   
/* 値を取得します */
   
while (maxdb_stmt_fetch($stmt)) {
       
printf("%s %s\n"$col1$col2);
   }

   
/* ステートメントを閉じます */
   
maxdb_stmt_close($stmt);
}

/* 接続を閉じます */
maxdb_close($link);
?>

上の例の出力は、 たとえば以下のようになります。

12203 Albany
60601 Chicago
60615 Chicago
45211 Cincinnati
33575 Clearwater
75243 Dallas
32018 Daytona Beach
33441 Deerfield Beach
48226 Detroit
90029 Hollywood
92714 Irvine
90804 Long Beach
11788 Long Island
90018 Los Angeles
70112 New Orleans
10019 New York
10580 New York
92262 Palm Springs
97213 Portland
60018 Rosemont
95054 Santa Clara
20903 Silver Spring
20005 Washington
20019 Washington
20037 Washington

参考

  • maxdb_stmt_bind_param() - プリペアドステートメントに、変数をパラメータとしてバインドする
  • maxdb_stmt_execute() - プリペアドクエリを実行する
  • maxdb_stmt_fetch() - プリペアドステートメントの結果を取得し、バインド変数に格納する
  • maxdb_prepare() - 後で実行するための SQL 文を準備する
  • maxdb_stmt_prepare() - 後で実行するための SQL 文を準備する
  • maxdb_stmt_init() - ステートメントを初期化し、maxdb_stmt_prepare で使用するリソースを返す
  • maxdb_stmt_errno() - 直近のステートメントコール時のエラーコードを返す
  • maxdb_stmt_error() - 直近のステートメントコール時のエラー文字列を返す