mysql и одновременные обращения

253
11 апреля 2017, 09:37

при написании запросов к базе данных Mysql, возник вопрос. Я получаю последнюю запись в бд, выбираю инкрементный ID(первичный ключ), потом увеличиваю на единицу для того, чтобы указать этот ID в запросе INSERT INTO . Вопрос простой: Не возникнет ли проблем при одновременных запросах нескольких посетителей страницы(например 200 посетителей). Не будет ли такой ситуации, что пока извлекается последняя запись у одного посетителя, у другого произошел уже запрос INSERT INTO, у первого будет уже устаревший последний ID? извиняюсь, за возможно, глупый вопрос. но буду рад пояснениям. Спасибо.

Answer 1

Все правильно вы думаете. Именно так оно и будет работать! Другими словами в mysql хранится информация про auto_increment - это id следующей (будущей) записи которая будет добавлена!

Если 200 человек одновременно получат это число, то любой кто сделает insert автоматически нарушит цепочку остальных 199 запросов.

READ ALSO
MySQL: ORDER BY перед GROUP BY

MySQL: ORDER BY перед GROUP BY

такая ситуация: есть две таблицы: одна с товарами, другая таблица с ценами на них у поставщиков, те

273
PHP Как подключиться БД MySql?

PHP Как подключиться БД MySql?

Что я делаю не так

252
GET-параметр страницы

GET-параметр страницы

Возник такой вопрос, у меня страница профиля пользователя определяются GET параметром ( sitecom/profile

221
И вновь про mysql и кириллицу

И вновь про mysql и кириллицу

Имеется БД с параметрами:

266