Pourquoi il y a un extra "(1 ligne(s) affectée)"

Le SSMS affiche un (1 row(s) affected) supplémentaire chaque fois que j'exécute insert/update. Par exemple, exécutez SQL

declare @a table (a int)
insert into @a values (1), (2)
update @a set a = 3 

Et le SSMS affichera le message suivant.

(2 row(s) affected)

(1 row(s) affected)

(2 row(s) affected)

(1 row(s) affected)

Je n'ai trouvé aucun déclencheur de base de données/serveur. Qu'est-ce qui pourrait causer l'extra (1 row(s) affected)?

21
demandé sur ca9163d9 2012-03-01 11:53:44

2 réponses

Cela signifie généralement que vous avez l'option actual execution plan activée. Le plan d'exécution est envoyé en tant que jeu de lignes supplémentaire, ce qui entraîne un message (1 row(s) affected) supplémentaire.

Pour désactiver le plan d'exécution réel, appuyez sur Ctrl + M.

37
répondu Andomar 2018-09-24 08:09:31

Cela ne devrait pas se produire. essayez de regarder dans le actual execution plan, ce qui se passe là-bas.

3
répondu Vikram 2012-03-01 07:59:05