mysqli::stmt_init
mysqli::$thread_id
mysqli
PHP Manual

# mysqli::store_result

# mysqli_store_result

(PHP 5)

mysqli::store_result -- mysqli_store_result — 直近のクエリから結果セットを転送する

### 説明

オブジェクト指向型

mysqli_result mysqli::store_result ( void )

手続き型

mysqli_result mysqli_store_result ( mysqli `$link` )

mysqli_data_seek() で使用される、 `link` で表されたデータベース接続の直近のクエリ から結果セットを転送します。

### パラメータ

`link`

  手続き型のみ: mysqli_connect() あるいは mysqli_init() が返すリンク ID。

### 返り値

バッファに格納した結果オブジェクトを返します。エラー時には `FALSE` を返します。

> 注意:

> mysqli_store_result() は、クエリが結果セットを 返さなかった場合（例えば、クエリが INSERT 文であった場合）に `FALSE` を返します。また、結果セットの読み込みに失敗した場合にも `FALSE` を返します。エラーが発生したかどうかを調べるには、 mysqli_error() が空文字列以外を返す・ mysqli_errno() がゼロ以外の値を返す・あるいは mysqli_field_count() がゼロ以外の値を返す のいずれかを確認します。それ以外にこの関数が `FALSE` を返す理由としては mysqli_query() のコールに成功して返された 結果セットが大きすぎる（メモリに割り当てられない）場合がありえます。 もし mysqli_field_count() がゼロ以外の値を 返した場合、文は空でない結果セットを生成しています。

### 注意

> 注意:

> クエリ結果が使用するメモリを mysqli_free_result() 関数で開放するのは、どんな場合でも大切です。しかし、大きい結果セットを mysqli_store_result() で転送した際は、特にこれが 重要となります。

### 例

mysqli_multi_query() を参照ください。

### 参考

- mysqli_real_query() - SQL クエリを実行する
- mysqli_use_result() - 結果セットの取得を開始する

mysqli::stmt_init
mysqli::$thread_id
mysqli
PHP Manual