Как заметил @ Мартин Смит , есть хорошее решение - несмотря на то, что оно противоречит моему вопросу, у него есть веские основания, которые, похоже, хорошо поддерживаются.Оригинальный ответ, который вы можете найти здесь , опубликованный @gbn.
BEGIN TRY
INSERT etc
END TRY
BEGIN CATCH
IF ERROR_NUMBER() <> 2627
RAISERROR etc
END CATCH
Серьезно, это самый быстрый и самый параллельный процесс без блокировок, особенно вбольшие объемы.Что, если UPDLOCK увеличен, и вся таблица заблокирована?
Оригинальный текст Пола Нильсена вы можете найти здесь .- урок 4.
Если у кого-то есть похожая проблема с моей, хорошо бы взглянуть на нее.