Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 удаление данных с автоматическим отключением ограничений, и включением после удаления  [new]
kolyady
Member

Откуда:
Сообщений: 137
Собственно нужно пробежаться по БД и грохнуть только данные оставив при этом справочники. Что грохнуть я уже отобрал как терь убрать ограничения (констрейнты) , удалить а потом их влючить . Так чтобы автоматически все это происходило. короче чтобы не указавать отдельно по каждой таблице. или может есть более простой способ
25 ноя 19, 16:50    [22024855]     Ответить | Цитировать Сообщить модератору
 Re: удаление данных с автоматическим отключением ограничений, и включением после удаления  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7391
kolyady,

простых нет путей.
25 ноя 19, 17:42    [22024904]     Ответить | Цитировать Сообщить модератору
 Re: удаление данных с автоматическим отключением ограничений, и включением после удаления  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4378
kolyady,

SELECT от INFORMATION_SCHEMA и генерить скрипты
25 ноя 19, 17:50    [22024908]     Ответить | Цитировать Сообщить модератору
 Re: удаление данных с автоматическим отключением ограничений, и включением после удаления  [new]
invm
Member

Откуда: Москва
Сообщений: 9115
kolyady
как терь убрать ограничения (констрейнты) , удалить а потом их влючить .
Если "грохнуть", это удалить все строки таблицы, то
set xact_abort on;

begin tran;
alter table MyTable nocheck constraint all;
delete from MyTable;
alter table MyTable check constraint all;
commit;

Ежели "грохнуть", это truncate, то см. 22024908
25 ноя 19, 18:25    [22024926]     Ответить | Цитировать Сообщить модератору
 Re: удаление данных с автоматическим отключением ограничений, и включением после удаления  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 30736
kolyady
Собственно нужно пробежаться по БД и грохнуть только данные оставив при этом справочники. Что грохнуть я уже отобрал как терь убрать ограничения (констрейнты) , удалить а потом их влючить . Так чтобы автоматически все это происходило. короче чтобы не указавать отдельно по каждой таблице. или может есть более простой способ
Сделайте в SSMS скрипт базы, выберете таблицы, в опциях укажите DROP and CREATE
Получится большой скрипт, в начале будут DROP CONSTRAINT, в конце будет создание констрейнов.
Вырежете нужные 2 куска, сохраните в отдельные файлы, получится 2 скрипта - удаления и создания FK.
25 ноя 19, 18:28    [22024928]     Ответить | Цитировать Сообщить модератору
 Re: удаление данных с автоматическим отключением ограничений, и включением после удаления  [new]
kolyady
Member

Откуда:
Сообщений: 137
alexeyvg,

спасибо так и сделал :)
25 ноя 19, 21:31    [22025044]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить