Rationalisation des opérations de données en masse dans MS SQL en désactivant temporairement les contraintes
La désactivation des contraintes offre une approche rationalisée des opérations de données en masse, telles que le transfert de tables entre bases de données. En suspendant temporairement les contrôles de contraintes, vous évitez les complexités liées à la gestion des séquences d'exécution nécessaires au maintien des relations entre les données. Cet article explique comment désactiver et réactiver temporairement les contraintes dans Microsoft SQL Server (MS SQL).
Désactivation des contraintes pour une seule table
Pour désactiver les contraintes sur une table spécifique (par exemple, "tableName"), utilisez la ALTER TABLE
commande suivante :
ALTER TABLE tableName NOCHECK CONSTRAINT ALL
Pour restaurer l'application des contraintes :
ALTER TABLE tableName WITH CHECK CHECK CONSTRAINT ALL
Gestion des contraintes à l'échelle de la base de données
Pour une désactivation de contrainte à l'échelle de la base de données, utilisez la sp_msforeachtable
procédure stockée :
EXEC sp_msforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
Réactivez toutes les contraintes avec :
EXEC sp_msforeachtable 'ALTER TABLE ? WITH CHECK CHECK CONSTRAINT ALL'
Ces méthodes fournissent une gestion efficace des contraintes temporaires, simplifiant considérablement les tâches de manipulation de données à grande échelle dans MS SQL.
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!