O problema é o seguinte, tenho uma procedure que apresenta um Erro de Check Constraint.
Quero guardar o erro da constraint para poder validar, sendo que estou montando um script de automação de testes do SQL usando TSQLUnit e gostaria de poder capturar esses erros.
Exemplo:
EXEC pr_CalculaMedia
Supondo que esta insira valor numa tabela e retorne para mim um erro de Constraint tipo:
Msg 547, Level 16, State 0, Procedure pr_CalculaMedia, Line 33
INSERT statement conflicted with COLUMN CHECK constraint 'CK_TB_MEDIA'. The conflict occurred in database 'BD', table 'tb_valor_calculo', column 'num_calculo'.
Como posso recuperar esta mensagem de erro numa variável a partir da chamada da procedure??
Exemplo:
DECLARE @erro varchar (5000)
EXEC @erro = pr_CalculaMedia
SELECT @erro
Sei que isso não funciona, mas gostaria de saber algo que funcione!
Pergunta
Guest --Reinaldo --
O problema é o seguinte, tenho uma procedure que apresenta um Erro de Check Constraint.
Quero guardar o erro da constraint para poder validar, sendo que estou montando um script de automação de testes do SQL usando TSQLUnit e gostaria de poder capturar esses erros.
Exemplo:
EXEC pr_CalculaMedia
Supondo que esta insira valor numa tabela e retorne para mim um erro de Constraint tipo:
Msg 547, Level 16, State 0, Procedure pr_CalculaMedia, Line 33
INSERT statement conflicted with COLUMN CHECK constraint 'CK_TB_MEDIA'. The conflict occurred in database 'BD', table 'tb_valor_calculo', column 'num_calculo'.
Como posso recuperar esta mensagem de erro numa variável a partir da chamada da procedure??
Exemplo:
DECLARE @erro varchar (5000)
EXEC @erro = pr_CalculaMedia
SELECT @erro
Sei que isso não funciona, mas gostaria de saber algo que funcione!
Att,
Reinaldo.
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.