Maison > base de données > tutoriel mysql > Comment puis-je mettre à jour plusieurs tables SQL Server en une seule transaction ?

Comment puis-je mettre à jour plusieurs tables SQL Server en une seule transaction ?

Linda Hamilton
Libérer: 2025-01-20 15:06:11
original
850 Les gens l'ont consulté

How Can I Update Multiple SQL Server Tables in a Single Transaction?

Mises à jour simultanées sur plusieurs tables SQL Server

La mise à jour directe de plusieurs tables au sein d'une seule instruction SQL n'est pas prise en charge dans SQL Server 2005. Cependant, vous pouvez réaliser des mises à jour atomiques sur plusieurs tables en encapsulant vos instructions UPDATE dans une transaction.

Illustrons cela avec un exemple. Supposons que nous devions mettre à jour LastName dans Table1 et WAprrs dans Table2 où la colonne id correspond à une valeur spécifique. Cela peut être accompli en utilisant le bloc de transaction suivant :

<code class="language-sql">BEGIN TRANSACTION;

UPDATE Table1
SET LastName = 'DR. XXXXXX'
FROM Table1 T1 INNER JOIN Table2 T2 ON T1.id = T2.id
WHERE T1.id = '011008';

UPDATE Table2
SET WAprrs = 'start,stop'
FROM Table1 T1 INNER JOIN Table2 T2 ON T1.id = T2.id
WHERE T1.id = '011008';

COMMIT TRANSACTION;</code>
Copier après la connexion

Il est crucial de se rappeler que la déclaration COMMIT TRANSACTION est essentielle. Cela garantit que les deux instructions UPDATE se terminent ensemble avec succès ou échouent toutes les deux, préservant ainsi l'intégrité des données et évitant les incohérences qui pourraient survenir si une seule mise à jour réussissait. L'utilisation de la syntaxe JOIN explicite est également préférable pour des raisons de clarté et d'efficacité par rapport aux jointures implicites.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal