#php #mysql
#php #mysql
Вопрос:
Допустим, я вставляю некоторые данные в несколько разных таблиц.
Table A:
Name
Address
Location
Table B:
Name
Address
Location
Какова вероятность того, что MySQL, скажем, вставит в 1, но не в другой, если это 2 разных запроса mysql
Я пытаюсь сказать, какова вероятность того, что PHP или MySQL не вставят данные, если все данные полностью верны.
Может ли PHP или MySQL каким-либо образом запутаться и пропустить запрос, особенно если я делаю сотни в секунду?
Если да, то как мне с этим бороться?
Комментарии:
1. Нет. Нет никаких шансов, что PHP или MySQL испортятся, если только ваш код, который вы не включили сюда , не испорчен.
2. Если вы спрашиваете о выполнении 2 вставок и убедитесь, что обе работают, посмотрите на транзакцию.
3. Похоже, вам нужно посмотреть на транзакции
Ответ №1:
Используйте «транзакцию базы данных».
Транзакция базы данных фиксирует ВСЕ или НИ ОДНУ из выполняемых вами операций одновременно.
Если у вас есть несколько INSERT
операций , UPDATE
, и / или DELETE
, которые вы хотели бы выполнять вместе, тогда вам следует:
- Инициируйте транзакцию.
- Выполните каждую из операций, одну за другой.
- Зафиксируйте транзакцию.
Таким образом, если что-то выйдет из строя в промежутке, НИ один из них на самом деле не произойдет до тех пор, пока не будет выполнена «фиксация».