Question

je voudrais faire quelque chose comme ça

raiserror(concat('Error in case @isFishy =', @isFishy, ' @isSmarmy=', @isSmarmy, ' @isTasty = ', @isTasty), 10, 1)
--or
raiserror('Error in case @isFishy =' + @isFishy + ' @isSmarmy=' + @isSmarmy + ' @isTasty = ' + @isTasty, 10, 1)

Mais ça ne marche pas. Comment puis-je accomplir ceci? Je suis dans SQL Server 2005.

Était-ce utile?

La solution

Le message d'erreur dans RAISERROR a une syntaxe similaire à celle de la fonction printf en C.

raiserror(N'Error in case @isFishy = %d @isSmarmy = %d @isTasty = %d',10,1,@isFishy,@isSmarmy,@isTasty)

consultez BOL pour plus de détails et d'autres options

Autres conseils

J'utilise beaucoup raiserror. Nous avons des procédures stockées appelées depuis une application .Net chaque nuit pour le traitement par lots, et l'application .Net souhaite consigner le résultat de la procédure de cette manière. Je ne sais pas pourquoi, mais je dois généralement construire la chaîne avant d'appeler raiserror.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top