В данном случае я написал следующий пример: < /p>
Код: Выделить всё
SET SESSION MAX_EXECUTION_TIME = 1000;
SELECT SLEEP(30);
Код: Выделить всё
17:14:13 SET SESSION MAX_EXECUTION_TIME = 1000 0 row(s) affected 0.000 sec
17:14:13 SELECT SLEEP(30) LIMIT 0, 1000 1 row(s) returned 1.000 sec / 0.000 sec
SET SESSION MAX_EXECUTION_TIME = 10000; -- 10 s
SELECT SLEEP(30);
< /code>
output: < /p>
17:16:34 SET SESSION MAX_EXECUTION_TIME = 10000 0 row(s) affected 0.000 sec
17:16:34 SELECT SLEEP(30) LIMIT 0, 1000 1 row(s) returned 10.000 sec / 0.000 sec
< /code>
Я нашел следующее предложение в документе MySQL: < /p>
max_execution_time применяется к операторам выбора только для чтения. Операторы, которые не прочитаны только те, которые вызывают хранимую функцию, которая изменяет данные в качестве побочного эффекта. < /P>
< /blockquote>
Однако выберите Sleep (30); < /code> не изменит базу данных, которая представляет собой операторы. Это? /> < /li>
Есть ли особая причина для дизайнера реализовать это поведение, а не бросить ошибку? < /li>
< /ul>
Подробнее здесь: https://stackoverflow.com/questions/796 ... -shortened