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

Как да деактивирате всички ограничения за проверка в базата данни на SQL Server - SQL Server / TSQL урок, част 87

Сценарий:

Вие работите като SQL Server / ETL разработчик. Трябва да заредите куп данни в таблици в базата данни на SQL Server. Проверете Ограниченията се създават на различни таблици. Има вероятност данните, които ще заредите, да не отговарят на изискванията за проверка на ограничението. Бизнесът все пак иска да заредите данните, дори и те да не отговарят на изискванията за проверка на ограничението. Искате временно да деактивирате всички ограничения в базата данни на SQL Server и след това да заредите данните и след това да активирате отново проверките на ограниченията.


Решение:

Скриптът по-долу може да се използва за генериране на скрипт за деактивиране на проверката за всички ограничения за проверка, които са активирани в базата данни. Можете допълнително да филтрирате таблиците в клаузата where, ако не искате да генерирате скрипт за всички таблици.

 --Generate Script to Disable All Check Constraint in SQL Server Database
 Select DB_Name() AS DBName,
 Schema_Name(Schema_id) AS TableSchema,
 Object_name(parent_object_id) as TableName,
  definition,
  'Alter Table [' + Schema_Name(Schema_id) 
    + '].[' + Object_name(parent_object_id) 
    + ']' + ' NOCHECK  CONSTRAINT ' 
    + '[' + NAME + ']' AS DisableCheckConstraint
 From sys.check_constraints
 where is_disabled=0
 
 
 
 
Как да генерирате скриптове за деактивиране на всички ограничения за проверка в базата данни на SQL Server
 Копирайте резултатите от колоната DisableCheckConstraint и изпълнете в SSMS, за да деактивирате задължителните ограничения за проверка.
ALTER TABLE [dbo].[Customer22] NOCHECK CONSTRAINT [CK__Customer2__FName__6C190EBB]

ALTER TABLE [dbo].[Employee] NOCHECK CONSTRAINT [CK__Employee__FName__7A672E12]


Видео демонстрация:Как да генерирате скриптове за деактивиране на всички проверки на ограничения в 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. Задайте съпоставяне на база данни в Entity Framework Code-First Initializer

  2. SQL:Изберете Топ 3 записа + Сума от количество

  3. @@DATEFIRST – Вземете първия ден от седмицата в SQL Server

  4. Как мога да конвертирам отметки във формат за дата?

  5. Примери за преобразуване на „дата“ в „datetime2“ в SQL Server (T-SQL)