Os erros são inevitáveis quando se trata de desenvolvimentos. Portanto, é um bom plano garantir que você tenha implementado algumas medidas para que os erros não quebrem a funcionalidade do seu aplicativo.
O SQL Server nos permite usar a declaração de arremesso para aumentar uma exceção. Em seguida, transferimos o contexto de execução para uma tentativa de pegar o bloco para lidar com o erro.
Sintaxe
O snippet de código a seguir mostra a sintaxe para a declaração de arremesso:
Jogue [error_numer,Os argumentos na sintaxe fornecida incluem o seguinte:
NOTA: Qualquer declaração antes de uma cláusula de arremesso deve ser encerrada com um semicolon. O servidor SQL também requer o arremesso para incluir os argumentos anteriores. Se a declaração de arremesso não tiver os argumentos anteriores, ela deve ser fechada dentro de um bloco de tentativa/captura.
A sintaxe é a seguinte:
Comece a tentarVocê não pode usar o caractere % no parâmetro error_message. Isso ocorre porque é um personagem reservado. Se você precisar incluir o caráter%em sua mensagem de erro, certifique -se de escapar com os caracteres de porcentagem dupla (%%).
Exemplos de declaração de arremesso de servidor SQL
Vamos dar uma olhada em alguns exemplos da declaração de arremesso em ação.
SQL Server usando a instrução THON para lançar a exceção
O exemplo a seguir demonstra o uso da declaração de arremesso para aumentar uma exceção:
lançar 50001, '[falhar] - o valor solicitado não é encontrado.', 1;Neste exemplo, usamos a declaração de arremesso para aumentar uma exceção com o código de erro 50001 e o estado de 1.
A saída resultante é a seguinte:
Erro SQL [50001] [S0001]: [Fail] - O valor solicitado não foi encontrado.SQL Server RethRows Exceção usando a instrução THON
Também podemos usar a exceção de arremesso para repensar a última exceção. Um código de exemplo é o seguinte:
soltar tabela se existe t;A consulta anterior deve imprimir o seguinte:
erro capturadoUsando o formatMessage para lançar uma mensagem personalizada
O exemplo a seguir mostra como usar a função FormatMessage para fazer uma exceção com uma mensagem personalizada:
execut sys.Sp_addmessage @msgnum = 50001,Nesse caso, a função de formatMessage nos permite adicionar as mensagens personalizadas, incluindo variáveis. Novamente, você pode verificar os documentos no SQL Server sp_addmessage () para saber mais.
A mensagem de erro resultante é a seguinte:
Erro SQL [50001] [S0001]: Uma mensagem personalizada, incluindo variável: 100Conclusão
Este post discutiu como você poderia usar a cláusula de arremesso no servidor SQL para aumentar uma exceção.
Obrigado pela leitura!