mysql_unbuffered_query 向 MySQL 发送 SQL 查询,无需获取和缓冲结果行 &mysql.alternative.note; 参阅:缓冲和非缓冲查询 &reftitle.description; resourcemysql_unbuffered_query stringquery resourcelink_identifierNULL mysql_unbuffered_query 将 SQL query 发送到 MySQL,而不像 mysql_query 那样自动获取和缓冲结果行。对于生成大型结果集的 SQL 查询,这可以节省大量内存,并且可以在检索第一行后立即开始处理结果集,因为不必等到执行完整的 SQL 查询。要在打开多个数据库连接时使用 mysql_unbuffered_query,必须指定可选参数 link_identifier 来标识要使用哪个连接。 &reftitle.parameters; query 要执行的 SQL 查询。 查询中的数据应正确转义。 &mysql.linkid.description; &reftitle.returnvalues; 对于 SELECT、SHOW、DESCRIBE 或 EXPLAIN 语句,mysql_unbuffered_query 在成功时返回 resource,错误时返回 &false;。 对于其他类型的 SQL 语句,UPDATE、DELETE、DROP 等,mysql_unbuffered_query 在成功时返回 &true;,在错误时返回 &false;。 &reftitle.notes; mysql_unbuffered_query 的好处是有代价的:在获取所有行之前,不能对 mysql_unbuffered_query 返回的结果集使用 mysql_num_rowsmysql_data_seek。还必须使用相同的 link_identifier 从无缓冲的 SQL 查询中获取所有结果行,然后才能将新的 SQL 查询发送到 MySQL。 &reftitle.seealso; mysql_query