powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как прочитать @@ERROR при обращении к заблокированной таблице
11 сообщений из 11, страница 1 из 1
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067545
Sergey_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При попытке SELECTа по заблокированной таблице при SET LOCK_TIMEOUT 0 процедура закрывается с сообщением "Lock request time out ...". Ошибка @@ERROR не перехватывается. Подскажите, в чем дело.
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067564
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просто натыкание на блокировку - это одна из тех ошибок, которые прерывают текущую обработку батча. А в чем проблема-то? Исключение на клиенте поймать не можешь?
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067569
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй через sp_executesql....
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067575
Sergey_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
To Dankov

Проблема в том, что внутри TSQL в конструкции:

SELECT ... по заблокированной таблице
IF @@ERROR <> 0

до "IF ..." даже дело не доходит, поэтому не удается обработать эту ситуацию своими средствами.
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067597
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не доходит. О том и толкую. Исключение на клиенте обрабатывай
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067635
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
или openquery....
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067700
Sergey_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
To Dankov

Обрабатывать интересно именно внутри процедуры, не возвращаясь к клиенту. Неужели нет средств обработки внутри SP ?
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067707
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну блин... ты ж попробуй...
OPENROWSET ( 'MSDASQL',
'DRIVER={SQL server}; SERVER=MySRV;UID=sa;PWD=MyPass' ,
'Твой новый батч' } )
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067769
Sergey_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to MiCe
Предложенная Вами конструкция не сработала -
" ... was unable to begin a distribution transaction"
а потом, OPENROWSET предназначен все таки для доступа к внешним базам, здесь же я обращаюсь к своей таблице. Хотелось просто получить @@ERROR , принять решение и нормально выйти. SQL же просто выкидывает из процедуры и выдает свое "Lock request time out ...".
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067772
Фотография Тимур
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А может поискать кто блокирует таблицу, добавить Hint (NOLOCK) ?
...
Рейтинг: 0 / 0
Как прочитать @@ERROR при обращении к заблокированной таблице
    #32067790
Sergey_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тимуру.
Пока остановились именно на этом варианте. Опрашиваем syslockinfo. Более прямого варианта пока никто не предложил.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как прочитать @@ERROR при обращении к заблокированной таблице
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]