Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да деактивирате всички ограничения на външния ключ в базата данни на SQL Server - SQL Server / TSQL урок, част 77

Сценарий:

Вие работите като разработчик на SQL Server, трябва да предоставите скриптовете, за да деактивирате цялото ограничение на външния ключ в базата данни на SQL Server. Това може да е сценарий, при който трябва да заредите еднократни данни и сте добре, ако данните нарушават референтната цялост.

Решение:


Нека вземем списъка с ограниченията на външния ключ от база данни на SQL Server, преди да генерираме скрипта за деактивиране.

--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
 
 
 
 
 
 
 
 
Как да проверите дали ограничението на външния ключ е активирано или деактивирано в SQL Server
 
Сега нека генерираме скрипт за деактивиране на ограничението на външния ключ в базата данни на SQL Server

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
 
 
 
 
Как да генерирате скрипт за деактивиране на всички ограничения на външни ключове в базата данни на SQL Server
 

Видео демонстрация:Как да деактивирате всички ограничения на външния ключ в базата данни на SQL Server


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Мога ли да използвам ADFS 2.0 за удостоверяване на определени потребители срещу SQL Server?

  2. Има ли безплатни инструменти за генериране на скриптове „INSERT INTO“ в MS SQL Server?

  3. Структурата на обекта се зарежда много бавно за първи път след всяка компилация

  4. Грешка на SQL Server 111:„...трябва да е първият израз в пакет от заявки“

  5. Вземете текущата часова зона на сървъра в SQL Server (T-SQL)