![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
Всем привет
Возник вопрос. При вставке данных нужно вставить данные пользователя в несколько талиц. Т.е. к примеру: вставляем общую инфу по юзеру, и потом данные в пару связных таблиц. Получается будет три последовательных запроса INSERT. В итого должны получить целостную, связанную между собой информацию. Так вот вопрос: стоит ли последовательно отслеживать результат каждого запроса, и при неудаче какого-то из них, удалять все вставленные записи (выполнение предыдущих запросов) и выводить юзеру сообщение, мол попробуйте еще раз? К примеру, если в друг произойдет на втором или третьем запросе, какой-то сбой* - в итоге получим не то что ожидали.. В принципе, всегда просто вставлял данные и бед не знал. Стоит ли заморачиваться по этому поводу, или это надуманная пробема? *Сбой - я имею ввиду, системный какой-нибудь, а не недостоверную информацию пользователя -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
CruorVult |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 9 Всего: 28 |
А что, транзакции отменили?
![]() |
|||
|
||||
s0lman |
|
|||
![]() Белый и лохматый ![]() ![]() Профиль Группа: Участник Сообщений: 637 Регистрация: 1.11.2007 Где: Ukraine Репутация: 9 Всего: 29 |
patap юзает MyISAM?
Где-то в литературе по ООП видел эмуляцию транзакций - это так, в качестве альтернативы (если не ошибаюсь, "ООП в php" Кузнецова) -------------------- Когда я уже выучусь на волшебника? :( |
|||
|
||||
patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
у меня все в MyISAM. Ведь чтобы "правильно" использывать транзакции нужно менять движок таблиц
Паралельных изменений в таблицах нет и не будет. Волнует только вопрос вставки новых данных. Т.е. нужно иметь полную гарантию того, что все три запроса на вставку буду выполнены. блокировка MyISAM таблиц, если правильно понамаю, такой гарантии не даст: если заблочить таблицы, и производить вставку, и если произойдет, к примеру, сбой в питании сервера, в этом случае никаких откатов не будет, и получм что в одну таблицу данных вставленно небудет. Верно? Добавлено через 1 минуту и 4 секунды Паралельных изменений в таблицах - это, в смысле, изменение одной и той же записи -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
CruorVult |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 9 Всего: 28 |
Есть 2 главных понятия: Быстродействие и Безопасность!
Определите для начала что для вас важнее в конкретном случае и тогда можно говорить дальше. |
|||
|
||||
patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
именно под эту задачу - однозначно быстродействие
-------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
CruorVult |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 9 Всего: 28 |
||||
|
||||
patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
похоже на правду. ))
и так на будущее: если задача будет действительно требовать безопасности, то нужно будет соответствующе проектировать БД? -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
CruorVult |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 9 Всего: 28 |
||||
|
||||
patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
CruorVult,спасибо. ясно. Просто реально еще ниразу с подобным не сталкивался, теперь если что, то буду точно занть куда рыть
если есть кому что добавить, рад услышать -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |