2010-08-24 6 views
0

J'appelle un sproc de SSMS, et ce sproc appelle un certain nombre d'autres. Je peux facilement traverser le sproc externe et, si je pénètre, je peux traverser les sprocs appelés. Mais un sproc ne sera tout simplement pas intervenu. Tenter de le faire agit comme si je l'enjambais. Autrement dit, il fonctionne sans être étagé.Avoir un sproc dans lequel débogueur n'interviendra pas (SQL Server 2008 Developer Edition sur Win7x64)

Il n'y a rien de remarquable à propos du sproc. Il met en place un tas de chaînes en tant que modèles SQL, puis a un curseur utilisé pour obtenir des valeurs (dans une boucle) qui sont utilisées pour peupler les modèles, et le SQL résultant est exécuté. Il est identique en général aux autres sprocs dans lesquels je peux intervenir.

Est-il possible qu'il y ait une sorte de drapeau pour un sproc pour empêcher de marcher dessus? Le sproc extérieur appelle plusieurs autres sprocs devant lui et, comme je le dis, je peux marcher du sproc externe vers l'intérieur sans problème, autre que celui-ci. Il n'y a rien de particulièrement spécial au sujet du code avant cet appel - en fait, la déclaration immédiate qui le précède est un appel à un autre sproc dans lequel je peux entrer. Cet appel revient normalement, puis le problème sproc est appelé.

Des idées?

Répondre

0

La procédure de problème est-elle créée en utilisant l'option WITH ENCRYPTION par hasard?

Il existe également certaines limitations répertoriées dans la spécification MSDN au Transact-SQL Debugging Limitations, mais aucune d'entre elles ne semble s'appliquer à votre cas.

Questions connexes