2010-07-22 15 views
0

J'ai remarqué quelque chose au cours des derniers mois. Chaque fois que nous exécutons un script contenant des instructions de transaction, disons que nous arrêtons la requête de manière inattendue, cette action verrouille la base de données.Transaction verrouillée SQL Server 2005

La seule solution est de détruire la transaction à chaque fois. Je n'ai jamais vécu cela avant même si j'ai arrêté la requête au milieu de la transaction dans le passé et il n'a jamais verrouillé la base de données.

Se pourrait-il qu'il nous manque quelque chose dans les paramètres ou je ne devrais pas arrêter les requêtes de transaction de façon inattendue?

Le problème est survenu avec SQL Server 2005. S'il vous plaît, j'ai besoin de votre cerveau. Merci les gars

Répondre

4

Ceci est d'habitude: vous avez envoyé un abort client qui disent « arrêter le traitement »

Pour Rollback et déverrouillage, vous devez utiliser SET XACT_ABORT ON

SO 1 et SO 2