J'ai retracé une poignée de procédures stockées avec EventClass RPC: complété par intermittence à partir du fournisseur de données .NET SQLCLIPT sans paramètres requis - Juste "Exec Sprocname".
Si je les appelais manuellement comme ils apparaissent dans la TextData de la trace, ils génèrent une exception - mais aucune exception n'est générée dans la trace d'origine. La colonne d'erreur de ces appels "paramétrés" affiche "1 - erreur", mais je ne comprends pas comment l'appel ne génère pas une exception.
Au début, je soupçonnai que c'était un problème de profileur, que "1 - erreur" a provoqué la tronquée des paramètres de TextData, mais je vois les mêmes résultats dans une séance d'événements étendue.
Quelqu'un a-t-il vu quelque chose comme celui-ci dans leurs traces de profileur ou ses sessions d'événement? L'application apporte presque certainement ces appels dans le cadre d'une erreur de cas de bord, mais pourquoi SQL Server ne lance pas une exception?
Set parsonly on le fera. Fmtonly générera une erreur.
PAR EXEMPLE:
USE [AdventureWorks]
GO
set parseonly on
go
exec [uspGetBillOfMaterials]
go
set parseonly off