クエリで変更された行の数を得る

# ifx_affected_rows

(PHP 4, PHP 5 < 5.2.1)

ifx_affected_rows — クエリで変更された行の数を得る

### 説明

ifx_affected_rows ( resource `$result_id` ) : int

`result_id` に関連するクエリにより変更された 行の数を返します。

insert, update ,delete の場合、その数は、実際に作用された行の数 (sqlerrd[2]) です。select の場合、これは推定値 (sqlerrd[0]) です。 この値を信用してはいけません。データベースサーバーは、SELECT により 実際に返される行の数を返すことはありません。これは、この段階 (オプティマイザがクエリ手順を定義している場合には、"PREPARE" を 行った直後) では、行の取得を始めてさえもいないためです。

ifx_prepare() の実行後に、クエリ結果を適当な量に 制限するために使用すると便利です。

### パラメータ

`result_id`

  ifx_query() または ifx_prepare() により返される有効な結果 ID です。

### 返り値

行の数を整数値で返します。

### 例

例1 Informix で変更された行

`<?php
$rid = ifx_prepare("select * from emp
where name like " . $name, $connid);
if (! $rid) {
/* ... error ... */
}
$rowcount = ifx_affected_rows($rid);
if ($rowcount > 1000) {
printf ("Too many rows in result set (%d)\n<br />", $rowcount);
die ("Please restrict your query<br />\n");
}
?>`

### 参考

- ifx_num_rows() - クエリから既に取得された行の数を数える