|
|
|
Есть ли смысл в транзакциях на SQL server, если транзакция на клиенте?
|
|||
|---|---|---|---|
|
#18+
Привет! у меня последовательно вызывается 3 процедуры на клиенте. Поэтому делаю там Код: plaintext Вопрос: есть ли смысл каждую процедуру на сервере делать также в транзакции? Смысл в том, что вроде хуже не будет, но тут с ошибкой столкнулся, которую не смог решить. А именно: после Код: plaintext Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. и при ролбэк получал Код: plaintext почему? вроде всё правильно делаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2008, 10:40 |
|
||
|
Есть ли смысл в транзакциях на SQL server, если транзакция на клиенте?
|
|||
|---|---|---|---|
|
#18+
да забей,ты на столь умный механизм транзакций в ado.net. по коннекту своему отдавай begin tran команду потому commit tran или rollback. и все. забей на их объект транзакции,он такой не удобный для понимания и совсем не мобильный . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2008, 13:11 |
|
||
|
Есть ли смысл в транзакциях на SQL server, если транзакция на клиенте?
|
|||
|---|---|---|---|
|
#18+
Плодить лишние транзакции не стоит. Так что либо используйте ado.net-транзакции, либо отключайте автокоммит и тогда уже используйте BEGIN TRAN/ROLLBACK TRAN. Какой вариант лучше - зависит от того, где логика приложения сконцентрирована. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2008, 13:44 |
|
||
|
Есть ли смысл в транзакциях на SQL server, если транзакция на клиенте?
|
|||
|---|---|---|---|
|
#18+
reliefи при ролбэк получал Код: plaintext Есть у SQL server такое правило, что у хранимки @@TRANCOUNT на входе и выходе должен быть одинаковым - иначе он кидает ашыпку. Поэтому, при разработке хранимки если неизвестно откуда и как она будет вызваться следует это учитывать. Я обычно делаю что-нибудь типа этого: [SRC tsql] DECLARE @ownTran bit IF @@TRANCOUNT > 0 SET @ownTran = 0 ELSE BEGIN SET @ownTran = 1 BEGIN TRAN END ... ... -- Success IF @ownTran = 1 COMMIT TRAN RETURN 0 OnError: IF @ownTran = 1 ROLLBACK TRAN[/SRC] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2008, 22:19 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=17&tid=1352208]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 373ms |

| 0 / 0 |
