SQL Server - est de l'utilisation de @@ROWCOUNT en sécurité dans des applications multithread?

Je suis à l'aide de SQL Server 2008.

J'ai une table Un qui accepte de nombreux insérer/mettre à jour en une seconde. Après l'insertion, mise à jour, je veux obtenir le nombre de lignes affectées.

INSERT INTO A (ID) VALUES (1)
IF @@ROWCOUNT = 0
    PRINT 'NO ROWS AFFECTED'

Alors que l'exécution de la requête, la même requête peut être appelé à nouveau par l'application. Donc ce qui arrive si l'exécution en cours est après l'INSERTION, mais avant SI le bloc à ce moment.

Pensez-vous @@ROWCOUNT peut donner un mauvais résultat pour cette raison?

Ou est-il toujours en sécurité dans son contexte?

OriginalL'auteur Ahmet Altun | 2012-01-22