Scenario:
Du arbetar som SQL Server-utvecklare. Du måste tillhandahålla skripten för att inaktivera alla Foreign Key Constraint i SQL Server-databasen. Det här kan vara ett scenario där du behöver ladda engångsdata och du är okej om data bryter mot referensintegriteten.Lösning:
Låt oss hämta listan över främmande nyckelbegränsningar från en SQL Server-databas innan vi genererar inaktiveringsskriptet.
--Get List of Foreign Key Constraints if Enabled or Disabled
USE YourDatabaseName
GO
Select
Schema_name(Schema_id) as SchemaName,
object_name(Parent_object_id) as TableName,
name as ForeignKeyConstraintName,
Case When Is_disabled=1 Then 'No'
ELSE 'Yes' End as IsEnabled
from sys.foreign_keys ![]() |
| Hur man kontrollerar om utländsk nyckelbegränsning är aktiverad eller inaktiverad i SQL Server |
Låt oss nu skapa ett skript för att inaktivera begränsning av främmande nyckel i SQL Server-databasen
USE YourdatabaseName go -- Drop Foreign Key Constraints Script SELECT distinct 'ALTER TABLE ' + '['+ Schema_name(FK.schema_id) + '].['+ OBJECT_NAME(FK.parent_object_id) + ']'+ ' NOCHECK CONSTRAINT ' + '[' + FK.name + ']' AS DisableConstraintQuery FROM sys.foreign_keys AS FK where is_disabled=0
![]() |
| Hur man genererar skript för att inaktivera alla främmande nyckelbegränsningar i SQL Server-databas |
Videodemo :Hur man inaktiverar alla restriktioner för främmande nyckel i SQL Server-databas

