6
votes

Comment pouvez-vous annuler un processus d'exécution SQL Server Programmatiquement

Disons que vous ayez exécuté le processus suivant (longue course) à partir de votre code:

//cancel the process if it is taking too long
DB.Execute("sp_CancelProcess @ProcessID=" + processID);


1 commentaires

Veuillez payer plus d'attention à vos choix de tags - Les balises sont la manière dont vous connectez votre question au public approprié.


4 Réponses :


4
votes

Kill @Spid

Notez que c'est un dernier effort. Vous devriez simplement fermer la connexion sur le client pour tuer le processus.


1 commentaires

Sachez simplement que vous ne pouvez pas tuer votre propre spid, vous devez créer une autre connexion, puis tuer le spid de la



7
votes

Utilisez tuer code> avec le ID de processus:

Server: Msg 6104, Level 16, State 1, Line 1
Cannot use KILL to kill your own process.


0 commentaires

0
votes

Vous devez exécuter votre requête asynchrone, comme suit: xxx

pour annuler la commande, exécutez ceci: xxx


1 commentaires

La suggestion de BeginexecutenonQuisery () est bonne, mais endexecutenonquery n'annule pas la commande - elle bloque jusqu'à ce que la commande se termine.



2
votes
Find you SPID 

Kill SPID

0 commentaires