Scenario:
U werkt als SQL Server-ontwikkelaar. U moet scripts voorbereiden om alle Foreign Key Constraint in een database in te schakelen die zijn uitgeschakeld. Dit kan gebeuren, misschien heeft iemand Foreign Key Constraints uitgeschakeld voor het laden van gegevens waarbij ze niet geïnteresseerd zijn in schending van de referentiële integriteit en zijn vergeten ze later in te schakelen.
Oplossing:
Laten we eerst de lijst met beperkingen voor externe sleutels met status ophalen door de onderstaande query te gebruiken
--Lijst met beperkingen voor externe sleutels ophalen indien ingeschakeld of uitgeschakeld GEBRUIK YourDatabaseName GO Selecteer Schema_name (Schema_id) als SchemaName , object_name(Parent_object_id) als TableName, naam als ForeignKeyConstraintName, Case When Is_disabled=1 Then 'No' ELSE 'Yes' End as IsEnabled van sys.foreign_keys
|
Controleren of Foreign Key Constraint is in- of uitgeschakeld in SQL Server-database |
Laten we nu scripts genereren om de Foreign Key Constraints in te schakelen die uitgeschakeld zijn in SQL Server Database door gebruik te maken van onderstaande query. ['+ Schema_name(FK.schema_id) + '].['+ OBJECT_NAME(FK.parent_object_id) + ']'+ ' CHECK CONSTRAINT ' + '[' + FK.name + ']' AS EnableConstraintQuery FROM sys.foreign_keys AS FK waar is_disabled=1 |
Script genereren om alle Foreign Key-beperkingen in SQL Server-database in te schakelen |
Kopieer de resultaten en voer ze uit in SSMS om uitgeschakelde Foreign Key Constraints in SQL Server Database in te schakelen.
Videodemo:script genereren om alle Foreign Key Constraints in SQL Server in te schakelen