#php #mysql
#php #mysql
Вопрос:
Как заблокировать таблицу для чтения и записи с помощью php? Вот что я безуспешно пытался.
mysql_query("LOCK TABLES table WRITE;");
mysql_query("LOCK TABLES table READ, WRITE;");
mysql_query("LOCK TABLES table READ WRITE;");
Вот ошибка, которую я получил:
У вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с ‘WRITE’ в строке 1
Комментарии:
1. ну, первое утверждение должно быть в порядке. Что это такое, что не работает? Выдает ли это ошибку? Разве это не ставит блокировку ЗАПИСИ?
Ответ №1:
mysql_query("LOCK TABLE table WRITE"); // you might think it's here
mysql_query("LOCK TABLE table READ, table AS t2 WRITE"); // <- but the error is here
mysql_query("LOCK TABLES table READ, table as t2 WRITE"); // <- ...and here.
Вы не можете получить несколько блокировок для одной и той же таблицы без ее псевдонимов. Прочитайте руководство.