(PHP 5 < 5.4.0, PECL sqlite >= 1.0.0)
sqlite_unbuffered_query -- SQLiteDatabase::unbufferedQuery — 事前取得していないクエリを実行し、全てのデータをバッファリングする
$dbhandle
, string $query
[, int $result_type
= SQLITE_BOTH
[, string &$error_msg
]] ) : resource$query
, resource $dbhandle
[, int $result_type
= SQLITE_BOTH
[, string &$error_msg
]] ) : resourceオブジェクト指向型 (メソッド):
$query
[, int $result_type
= SQLITE_BOTH
[, string &$error_msg
]] ) : SQLiteUnbufferedsqlite_unbuffered_query() は sqlite_query() と同じですが、 連続的に前方のみにアクセス可能な結果セットが返され、 各レコードを1件ずつ読み込むことだけしかできないところが異なります。
この関数は、一度に1件ずつレコードを処理するだけでよく、ランダムに データをアクセスする必要がない、HTMLテーブルのようなものを生成する のに適しています。
注意:
sqlite_seek(), sqlite_rewind(), sqlite_next(), sqlite_current() および sqlite_num_rows() のような関数は、この関数から返 された結果ハンドルでは動作しません。
dbhandle
SQLite データベースリソース。手続きに従って、 sqlite_open() から返されます。 このパラメータは、 オブジェクト指向言語型メソッドを使用する場合は不要です。
query
実行するクエリ
クエリ内のデータは 適切にエスケープ する必要があります。
result_type
オプションの result_type
パラメータには定数を指定でき、返される配列の添字を定義します。
SQLITE_ASSOC
を用いると、連想配列の添字(名前フィールド)のみが
返されます。一方、SQLITE_NUM
は、
数値の添字(フィールド番号)のみを返します。SQLITE_BOTH
は、
連想配列の添字と数値の添字の両方を返します。
SQLITE_BOTH
がこの関数のデフォルトです。
error_msg
もしエラーが発生した場合、ここに保存されます。SQL 構文のエラーは sqlite_last_error() 関数で取得することが できないため、このパラメータが特に重要となります。
注意: (MySQL のような)他のデータベースエクステンションとの互換性のため、 2 種類の構文がサポートされています。 推奨されるのは最初の構文で、
dbhandle
パラメータを 関数の最初のパラメータとするものです。
結果セットを返します。失敗した場合に FALSE
を返します。
sqlite_unbuffered_query() は、 各レコードを順番に読み込む場合にのみ利用可能な シーケンシャルで前進のみ可能な結果セットを返します。
バージョン | 説明 |
---|---|
5.1.0 |
error_msg パラメータが追加されました。
|