meu senior me disse que, para a execução da consulta SQL, por padrão, não bloqueia a tabela.
Isso é verdade. No entanto, isso não significa que uma consulta não possa bloquear uma tabela.
o relatório do SSRS realmente bloqueará as tabelas que estão sendo consultadas?
O SSRS obtém os dados usados para renderizar o relatório executando uma consulta ou procedimento armazenado no banco de dados.
Essa consulta é definida pelo desenvolvedor e pode acabar bloqueando uma tabela (ou tabelas), dependendo do nível de isolamento e quantas linhas estão envolvidas. (De fato, pode haver casos em que você queira fazer isso de propósito .) A conclusão é que cabe ao desenvolvedor como o bloqueio funciona para a consulta. O SSRS não pode resolver esse problema para você. É por isso que não há documentação.
Considere (por exemplo):
- Usando
READ UNCOMMITTED
se leituras sujas estão bem
- Ativando e Utilizando um Nível de Isolamento de Instantâneo
- Envio de log no modo de espera e execução de consultas na cópia somente leitura
SET TRANSACTION ISOLATION LEVEL
por exemplo,READ UNCOMMITTED
se você não se importa em arriscar algumas leituras sujas.