RAISERROR
é tão bom quanto obsoleto. A documentação diz
Novos aplicativos devem usar
THROW
em vez deRAISERROR
.
No entanto, é comumente usado para liberar o buffer PRINT .
Suponha que eu esteja escrevendo um procedimento armazenado longo e queira relatórios regulares sobre em que etapa ele está. Se RAISERROR
está fora de questão, como devo PRINT
partir disso?
Suponha uma versão relativamente recente do SQL Server. Digamos 2019.
muitas coisas estão obsoletas
O que para a Microsoft significa apenas que eles não estão sendo mais desenvolvidos ativamente. Porém, nenhuma dessas coisas é realmente retirada do produto.
Mas
RAISERROR
não está listado como obsoleto em nenhum lugar.Não está aqui:
Exceto esta nota:
E também não está listado aqui:
Você não corre o risco de não poder usá-lo. Se você olhar a lista de itens que estão oficialmente obsoletos, quase todos eles ainda estão no produto no SQL Server 2022.
É muito difícil para a Microsoft remover completamente qualquer coisa, mesmo com anos de antecedência, por causa da quantidade de gritos que acontecerão se algo que estava funcionando há mais de 20 anos parar de funcionar repentinamente.