Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7">

ifx_affected_rows

(PHP 3>= 3.0.3, PHP 4 )

ifx_affected_rows -- クエリーで作用された行の数を得る

説明

int ifx_affected_rows ( int result_id)

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

result_id に関連するクエリーにより作用され た行の数を返します。

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

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

ifx_num_rows() も参照下さい。

例 1Informix affected rows

$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");
}