Scénario :
Vous travaillez en tant que développeur SQL Server ou développeur ETL, vous avez désactivé toutes les contraintes de vérification dans la base de données SQL Server avant de charger les données. Vous devez fournir le script qui doit pouvoir générer les scripts d'activation de la contrainte de vérification pour toutes les contraintes de vérification qui sont désactivées dans la base de données SQL Server.
Solution :
Nous pouvons utiliser des objets système pour générer des scripts d'activation de vérification des contraintes. La requête ci-dessous peut être utilisée pour générer des scripts pour activer les contraintes de vérification. Si vous ne souhaitez pas activer toutes les contraintes de vérification, vous pouvez filtrer davantage les objets dans la clause where.
--Generate Script to Enable All Check Constraint dans la base de données SQL Server Sélectionnez DB_Name() AS DBName, Schema_Name(Schema_id) AS TableSchema, Object_name(parent_object_id) comme TableName, définition, 'Alter Table [' + Schema_Name(Schema_id) + '].[' + Object_name(parent_object_id) + ' ]' + ' CHECK CONSTRAINT ' + '[' + NAME + ']' AS EnableCheckConstraint De sys.check_constraints où is_disabled=1
|
Comment générer le script Activer tous les contrôles de contraintes dans la base de données SQL Server |
Copiez les résultats de la colonne EnableCheckConstraint, collez-les dans SSMS et exécutez.
Alter Table [dbo].[Customer22] CHECK CONSTRAINT [CK__Customer2__FName__6C190EBB]Alter Table [dbo].[Employee] CHECK CONSTRAINT [ CK__Employé__FName__7A672E12]
Démo vidéo :comment générer des scripts pour activer toutes les contraintes de vérification
dans la base de données SQL Server