sesam_fetch_result

(PHP 3 CVS only)

sesam_fetch_result -- クエリ結果の全てあるいは一部を返す

説明

mixed sesam_fetch_result ( string result_id, int [max_rows] )

クエリ結果のエントリを種々の型の配列として返します。オプションで 最大レコード数を max_rows に制限することが 可能です。レコード番号およびカラム番号は共に0から始まることに注意 して下さい。

表 1 sesam_fetch_result() により返された種々の結果集合

配列要素 定数
int $arr["count"] 結果集合のカラム数 ("即時型"クエリの場合に0)
int $arr["rows"] 結果集合のレコード数(0と max_rows の間)
bool $arr["truncated"] レコード数が max_rows 以上の場合に TRUE 、そうでない場合に FALSE 。これが TRUE でな い場合でも、結果エントリはもうないために次の sesam_fetch_result() はレコードを返さない 可能性があります。
mixed $arr[col][row] レコード( row ) および カラム( col )にある全てのフィールドの結果デー タ、(整数のレコード番号 row は0から $arr["rows"]-1 の間であり、 col は 0 から $arr["count"]-1 の間です)。フィールドは空 である可能性があり、このため、PHPの isset() 関数を使用してフィールドが存在す るかどうか確認する必要があります。返されるフィールドの型は、 そのカラムのSQL型宣言(適用される変換については SESAM 概要 参照)に依存します。 SESAM "複数フィールド" は"インライン"であり、カラムの番号と 同様に処理されます。
大きなクエリで使用されるメモリの最大値は、巨大なものになる可能性 があることに注意して下さい。結果が利用可能な全メモリを消費しない ことが確実である場合以外は、返されるレコード数の最大値を制限する ために max_rows パラメータを使用して下さい。

"複数フィールド"を確認するために sesam_fetch_row() および sesam_field_array() も参照下さい。 sesam_fetch_result() の完全な例については、 sesam_query() 関数の説明を参照下さい。