sqlite_unbuffered_query

(PHP 5)

sqlite_unbuffered_query

(no version information, might be only in CVS)

SQLiteDatabase->unbufferedQuery -- Execute a query that does not prefetch and buffer all data

说明

resource sqlite_unbuffered_query ( resource dbhandle, string query [, int result_type [, string &error_msg]] )

resource sqlite_unbuffered_query ( string query, resource dbhandle [, int result_type [, string &error_msg]] )

Object oriented style (method):

class SQLiteDatabase {

SQLiteUnbuffered unbufferedQuery ( string query [, int result_type [, string &error_msg]] )

}

sqlite_unbuffered_query() is identical to sqlite_query() except that the result that is returned is a sequential forward-only result set that can only be used to read each row, one after the other.

This function is ideal for generating things such as HTML tables where you only need to process one row at a time and don't need to randomly access the row data.

注: Functions such as sqlite_seek(), sqlite_rewind(), sqlite_next(), sqlite_current(), and sqlite_num_rows() do not work on result handles returned from sqlite_unbuffered_query().

参数

dbhandle

The SQLite Database resource; returned from sqlite_open() when used procedurally. This parameter is not required when using the object-oriented method.

query

The query to be executed.

result_type

可选的 result_type 参数接受一个常量并决定返回的数组如何索引。用 SQLITE_ASSOC 只会返回关联索引(有名称字段)而 SQLITE_NUM 只会返回数字索引(有序字段数)。SQLITE_BOTH 会同时返回关联和数字索引。 SQLITE_BOTH 是本函数的默认值。

error_msg

The specified variable will be filled if an error occurs. This is specially important because SQL syntax errors can't be fetched using the sqlite_last_error() function.

注: 为兼容其它数据库(例如 MySQL),支持另两种替代的语法。推荐用第一种,dbhandle 参数作为函数的第一个参数。

返回值

Returns a result handle or FALSE on failure.

sqlite_unbuffered_query() returns a sequential forward-only result set that can only be used to read each row, one after the other.

更新日志

版本说明
5.1.0 Added the error_msg parameter


add a note add a note User Contributed Notes
ofbuker at gmail dot com
31-Dec-2004 04:40
<?php

ob_start
();
echo
"<title>Members</title>";
sqlite_unbuffered_query($query,"select * from members");
while(
sqlite_fetch_object($rows,$query)){
   echo
$rows->membername;
   echo
"<br>";
}
ob_end_flush();

?>
radley25 at spamcop net
31-May-2004 03:27
Always use this over the sqlite_fetch_* functions if possible as it's much faster.