Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Транзакция для одного запроса 
V
    Опции темы
animegirl
Дата 13.9.2012, 07:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Незнайка на Марсе
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 24.7.2011

Репутация: нет
Всего: нет



Имеет смысл использовать транзакцию для одного запроса. Для меня раньше транзакции имели смысл, когда одновременно надо было вставить несколько взаимосвязанных строчек в разные таблицы, которые получалось отослать, только через несколько запросов. Сейчас делая запрос на UPDATE я затрагиваю до 6-7 таблиц, но на автомате отказалась от транзакции, аргументируя себе тем, что если будет фэйл, то мне функция вернёт ошибку, и так как строчка одна, то либо случиться всё либо ничего. Но закралась ко мне тень сомнения так ли это.

Тоесть если я одним запросом изменяю данные в нескольких таблиц, может такое случиться, что в части данные изменяться, а в другой части нет? Мне сейчас не нужно знать выдаст это ошибку или нет, меня волнует целостность связей данных.


--------------------
Скажи миру - НЯ!
PM   Вверх
Akina
Дата 13.9.2012, 08:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 106
Всего: 454



Запрос - штука в общем атомарная. Или выполнится, или нет. Не может быть так, что часть записей дополнится/изменится/удалится, а часть - нет по причине ошибки выполнения запроса. Посему транзакция бессмысленна - одиночный запрос и так фактически обёрнут в неявную транзакцию.

Другое дело, если выполнение запроса инициирует выполнение процедур, функций, триггеров и пр., которые в свою очередь вносят изменения в данные. Вот тут, несомненно, без транзакции никуда.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
animegirl
Дата 13.9.2012, 08:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Незнайка на Марсе
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 24.7.2011

Репутация: нет
Всего: нет



Всего перечисленного на данный момент нету, но на будущие учту. Спасибо


--------------------
Скажи миру - НЯ!
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0451 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.