Всем доброго дня! Бродил по Интернету и наткнулся на блокировку в MySQL, когда могут параллельно несколько пользователей считывать или записывать данные в таблице. Для блокировки есть метод LOCK TABLE, для разблокировки - UNLOCK TABLE. Так интересно, если у меня первый пользователь зайдёт и заблокирует таблицу на чтение (то есть что никто не сможет читать кроме него), и в это же время зайдёт второй пользователь, но таблица заблокирована, то что произойдёт? Пользователь встанет в очередь, когда первый разблокирует таблицу или просто пользователь не получит данные и от MySQL придёт ответ об ошибке?
Эх, это конкретно меняет дело. А то я думал что если первый пользователь заблокировал таблицу, то второму пользователю выведется код ошибки, что типа таблица пока заблокирована, и он получив этот код, сможет повторить запрос через определённое время. А оказывается что в очередь войдёт. Вон как. А если у меня будет три таблицы: Table1, Table2 и Table3. Если первый пользователь заблокирует Table1 и ещё не успев разблокировать, войдёт второй пользователь и захочет проделать действия с таблицей Table2, ему это удастся? Или же что-то произойдёт?