Вы можете временно отключить ограничения на своих таблицах, выполнить работу, а затем перестроить их.
Вот простой способ сделать это ...
Отключите все индексы, включая первичные ключи, которые отключат все внешние ключи, затем снова включите только первичные ключи, чтобы вы могли работать с ними ...
DECLARE @sql AS NVARCHAR(max)=''
select @sql = @sql +
'ALTER INDEX ALL ON [' + t.[name] + '] DISABLE;'+CHAR(13)
from
sys.tables t
where type='u'
select @sql = @sql +
'ALTER INDEX ' + i.[name] + ' ON [' + t.[name] + '] REBUILD;'+CHAR(13)
from
sys.key_constraints i
join
sys.tables t on i.parent_object_id=t.object_id
where
i.type='PK'
exec dbo.sp_executesql @sql;
go
[Сделайте что-нибудь, например, загрузку данных]
Затем снова включите и перестройте индексы ...
DECLARE @sql AS NVARCHAR(max)=''
select @sql = @sql +
'ALTER INDEX ALL ON [' + t.[name] + '] REBUILD;'+CHAR(13)
from
sys.tables t
where type='u'
exec dbo.sp_executesql @sql;
go