![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Транзакции в хранимках [MSSQL]
Ёжик из тумана © (2007-02-01 20:29:00)Я Вам ещё не надоел?
Тогда Приветствую
У меня в хранимке есть несколько инсертов и вложенная процедура. Так вот всю эту кухню запускать в рамках одной транзакции или на каждое действие по отдельности? Если последнее, то откат будет более длинным (в смысле кода). А откатывать надо целиком всю хранимку. Можно, конечно, с клиента, но зачем лишний траффик гонять?
evvcom (2007-02-02 11:00:00) [21]> [4] Sergey13 © (02.02.07 08:55)
Наверное, даже еще точнее будет, если сказать "в ХП, выполняющейся в контексте той же транзакции, которая была инициирована клиентом" :o)
> [7] logic (02.02.07 10:52)
ИМХО, мешает, с учетом вышеизложенного замечания. Клиент (юзер) должен сам решать, коммитить ему ту лабуду, которую он ввел, или это он баловался или чего-то там прикидывал.
Sergey13 (2007-02-02 10:57:00) [22]> [7] logic (02.02.07 10:52)
Оно не мешает. Но вот если, как у автора, ынутри одной процы вызывается другая, то если во внутренней будет commit стоять, то вполне можно получить удивление от работы.
evvcom (2007-02-02 10:53:00) [23]> [6] Gin2 (02.02.07 10:42)
> если запущу на сервере в QA это клиент?
Ну уж точно QA не сервер. Ты знаешь какое-то третье понятие, неизвестное нам?
logic (2007-02-02 10:52:00) [24]
> Sergey13 © (02.02.07 08:55) [4]
В принципе - одно другому не мешает.
Gin2 (2007-02-02 10:42:00) [25]
> Sergey13 © (02.02.07 08:55) [4]
что значит клиент? если запущу на сервере в QA это клиент?
А вообще нужно или нет, надо смотерть ХП в базе master - там Мягкотелые сами все сказали.
Ega23 (2007-02-02 08:56:00) [26]Просле каждого шага на ошибку проверять надо.
Sergey13 (2007-02-02 08:55:00) [27]> [3] Sergey13 © (02.02.07 08:11)
Подумал, и решил немного исправить.
В ХП, запускаемых с клиента, вообще не стоит управлять транзакциями. Это прерогатива самого клиента.
Sergey13 (2007-02-02 08:11:00) [28]> [0] Ёжик из тумана (01.02.07 20:29)
В ХП вообще не стоит управлять транзакциями. Это прерогатива клиента.
DrPass (2007-02-02 00:56:00) [29]
> Так вот всю эту кухню запускать в рамках одной транзакции
> или на каждое действие по отдельности?
Если ты задаешь такие вопросы - то зачем тебе там вообще транзакции. Включи в драйвере автокоммит и забудь про них. Все равно будет лучше работать, чем с такими идейками
Виталий Панасенко (2007-02-01 20:31:00) [30]
> Ёжик из тумана (01.02.07 20:29)
выйди, наконец то.....