【发布时间】:2014-04-16 09:56:30
【问题描述】:
我在循环中执行了数千次更新查询。
一切顺利,但问题是所有更新都需要大量时间。
如果我像这样在一个字符串中连接/组合所有更新查询:
$update_query = "";
while(condition)
{
$update_query = $update_query . " update table set ... ; ";
}
然后执行一次$update_query,会有帮助吗?
或者我还能做些什么来获得更好的性能?有什么提示或建议吗?
【问题讨论】:
-
确保您使用的是行级锁定(存储引擎是 innodb 或其他具有行级锁定的,myisam 没有这样的)并且您的 where 子句中有一个索引(最好case - 唯一索引)。您也可以关闭自动提交,并立即提交...
标签: php mysql sql performance