да табличная подсказка переопределяет настройку уровня изоляции, так что вы все равно будете получать грязные показания
легко проверить
первый запуск этого
create table bla(id int)
insert bla values(1)
begin tran
select * from bla with (updlock, holdlock)
убедитесь, что не совершаете транс !!
откройте другое окно и запустите
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
select * from bla -- with (nolock)
вы ничего не получите обратно.
откройте другое окно и запустите это сейчас
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
select * from bla with (nolock)
как видите, вы вернетесь назад
Кстати, READ COMMITTED - уровень изоляции по умолчанию, его не нужно устанавливать
Взгляните на Изоляция снимков , которая не вернет вам грязные данные, но все равно не заблокирует