0

我有简单的查询

UPDATE `local-cadastre` SET `name` = :district_name WHERE `id` = :uniq_id

但是这个查询在foreach循环中重复了大约24000次,效果很好但是浏览器显示504 Gateway Timeout错误,是否可以避免这种情况?

4

1 回答 1

1

由于 IP 通信速度较慢,此问题与网络有关。

如果您通过存储过程执行此任务,那么您可以避免这种情况,因为存储过程驻留在服务器端。首先将所有 uniq_ids 放在游标中(在存储过程下),然后一个一个更新。

您可以手动调用此存储过程,通过 mysql 或 windows 调度程序或 cron 作业中的事件。

于 2014-04-03T06:32:42.373 回答