MySQL" Fire-And-Forget" INSERT / UPDATE / DELETE - 建议mysql_unbuffered_query使用?

时间:2012-06-16 17:49:18

标签: php mysql unbuffered-queries

我们有很多疑问,我们认为这是“一劳永逸”。

从某种意义上说,这些只是记录插入,更新等。不那么重要的事情,用户看到的前端从未使用过的数据。

这听起来像是mysql_unbuffered_query的理想情况。

这是可取的吗?

我们正在使用innodb,因此无法使用INSERT DELAYED这样的内容。

谢谢!

1 个答案:

答案 0 :(得分:1)

阅读http://www.php.net/manual/en/mysqlinfo.concepts.buffering.php后:

  

遵循这些特性应该使用缓冲查询   您希望只有有限的结果集或需要知道的情况   读取所有行之前返回的行数。无缓冲模式   当你期望更大的结果时应该使用。

似乎无缓冲查询在选择上非常有用 ,因为更新,插入和删除没有结果集。

我没有看到使用无缓冲更新,插入和删除的任何问题,除了:

  

除非从服务器获取完整的结果集,否则不再进行   查询可以通过同一连接发送。无缓冲的查询可以   也被称为“使用结果”。

那么, last_insert_id affected_rows 结果如何?我不相信它,因为没有 mysql_fetch *来获取这些信息。

因此,如果您使用无缓冲查询体验性能提升,请使用它!