|
Try catch и linked server - не могу поймать ошибку
|
|||
---|---|---|---|
#18+
Добрый день, всех с наступающим. Есть примерно такой код : Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
При выполнении строки update на удаленном сервере в триггере на таблицу Table1 вызывается Raiserror + rollback. При выполнении в студии скрипта с циклом получаю примерно такую ошибку Код: plaintext 1.
А очень хочется перехватить возникшее исключение и обработать. Уважаемые коллеги, плиз хелп Сервера такие : локальный Microsoft SQL Server 2005 - 9.00.4266.00 (X64) Oct 7 2009 17:38:17 Copyright (c) 1988-2005 Microsoft Corporation Developer Edition (64-bit) on Windows NT 5.2 (Build 3790: Service Pack 2) удалённый Microsoft SQL Server 2005 - 9.00.4230.00 (Intel X86) Jul 30 2009 13:45:19 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition on Windows NT 5.2 (Build 3790: Service Pack 2) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 16:06 |
|
Try catch и linked server - не могу поймать ошибку
|
|||
---|---|---|---|
#18+
Любитель Try Catch, Частично сам и отвечу : technet msdn Вызов оператора RAISERROR с уровнем серьезности ошибки менее 20 из удаленной хранимой процедуры вызывает ошибку аварийного завершения инструкции на удаленном сервере. Конструкция TRY…CATCH на локальном сервере обрабатывает только ошибки аварийного завершения удаленного пакета. Если удаленная хранимая процедура вызывает оператор RAISERROR с уровнем серьезности менее 20 и эта удаленная хранимая процедура находится в области блока TRY на локальном сервере, то RAISERROR не передает управление блоку CATCH конструкции TRY…CATCH. Однако оператор RAISERROR с уровнем серьезности ошибки 20 или более на удаленном сервере разрывает соединение, и выполнение на локальном сервере передается блоку CATCH Пока на ум приходит выполнять не через exec. а через sp_executesql с вложенным try catch или что-то подобное. Нет ли у кого подобного опыта? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 16:10 |
|
Try catch и linked server - не могу поймать ошибку
|
|||
---|---|---|---|
#18+
Мда. Уже и сели и встали и в бубен постучали. Пробовал без try catch, обрабатывая @@error на каждом шаге. Впечатление такое, что никаких обработок ошибок нет вообще, а MS DTC обнаруживает ошибку и просто рвет коннект между серверами. И никак перехватывать этот обрыв не получается. Может в настройках MS DTC есть какая галка чудесная? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 17:27 |
|
Try catch и linked server - не могу поймать ошибку
|
|||
---|---|---|---|
#18+
Сейчас решаю проблему логивания событий... нашел такую статью... возможно кому то будет полезна https://www.sql.ru/articles/mssql/2005/101908definitionofinaccessibilitylinkedserver.shtml ... |
|||
:
Нравится:
Не нравится:
|
|||
24.08.2020, 11:52 |
|
|
start [/forum/topic.php?fid=46&fpage=50&tid=1685739]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
others: | 272ms |
total: | 387ms |
0 / 0 |