包含此行的MySQL、PHP页面将执行时间限制为1秒。
$conn->query('SET SESSION MAX_EXECUTION_TIME = 1000');
错误处理,告诉用户查询范围太广,花费的时间太长。
if ($conn->errno == 3024) {
echo "Sorry it's taking too long, be more specific.
die();
$conn->close();
}
是否有某种方法可以向用户返回“我们在查询超时之前得到了x个结果”,而不是在错误点终止查询?
换句话说,我们能否让MySQL告诉我们在超时之前返回了多少结果?
有没有其他方法可以达到这种效果?
1条答案
按热度按时间omtl5h9j1#
最大执行时间在开始提取结果之前,在执行期间终止语句。如果超时,则没有结果。如果执行完成,则可以提取结果。提取没有超时。
您知道
max_execution_time
是以毫秒为单位的吗?所以您将查询执行的超时设置为1.0秒。这是您的意图吗?