2011-03-27 3 views
2

J'appelle un proc stocké sql d'ajax pendant le débogage, j'ai réalisé que son exécution a été longue. J'ai fermé la page appelant ce proc via .ajax.terminer l'exécution de la procédure stockée du serveur sql

Comment puis-je vérifier si le proc n'est pas encore en cours d'exécution et comment puis-je le terminer depuis sql (script ou manuellement).

Répondre

2

Pour déterminer si des sessions en cours exécutent la procédure que vous pouvez utiliser

Use YourDB 

SELECT * 
FROM sys.dm_exec_requests 
cross apply sys.dm_exec_query_plan(plan_handle) 
where objectid=OBJECT_ID('YourSchema.YourProc') 

(Si votre procédure appelle d'autres procédures que vous devrez peut-être modifier ci-dessus)

Vous pouvez tuer sans ménagement une session avec (si vous disposez des autorisations suffisantes), mais sachez que s'il effectuait une activité journalisée, vous devrez peut-être attendre longtemps avant de pouvoir revenir en arrière.