powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Очистить базу данных. TRUNCATE TABLE с Foreign Keys
8 сообщений из 8, страница 1 из 1
Очистить базу данных. TRUNCATE TABLE с Foreign Keys
    #39934442
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.
Хочу полностью очистить базу данных, но у многих таблиц стоят ограничения Foreign keys.

Например, когда я пытаюсь сделать
Код: sql
1.
TRUNCATE TABLE Clients 

вылезает ошибка о невозможности этого действия.

Можно ли не удаляя сотни внешних ключей очистить эти таблицы ?
А потом, ещё и возвращать их назад.
...
Рейтинг: 0 / 0
Очистить базу данных. TRUNCATE TABLE с Foreign Keys
    #39934452
andy st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вариант 1 - dbcc clonedatabase
Вариант 2 - заскриптовать объекты базы без данных и применить скрипты в новой бд
Вариант 3 - изучить теорию по внешним ключам и их реализацию в MS SQL Server, построить схему, определить порядок работы с таблицами, написать скрипт, который будет всё чистить
ну и т.п.
...
Рейтинг: 0 / 0
Очистить базу данных. TRUNCATE TABLE с Foreign Keys
    #39934471
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B,

А как себе представляете удаление записи, если на неё стоит ссылка из другой таблицы?

Сначала надо ссылки убрать -- потом удалять.
...
Рейтинг: 0 / 0
Очистить базу данных. TRUNCATE TABLE с Foreign Keys
    #39934509
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin

А как себе представляете удаление записи, если на неё стоит ссылка из другой таблицы?

В этих таблицах нет ссылок по ключу, т.к. они пусты.
Всем эти таблицам я и хочу сделать TRUNCATE.


andy st ,
да наверное скрипты как вариант.

Ну на самом деле, я хочу очистить не прям уж все таблицы, а только самые большие.
По количеству их штук 10, но эти 10 занимают 99% базы по объёму и количеству записей.


В общем, видимо надо удалять каждый ключ по отдельности и потом восстанавливать его.
И так раз 50

Я надеялся, что есть что то типо такой команды:
Код: sql
1.
2.
3.
4.
5.
 Что нибудь DISABLE
 TRUNCATE TABLE Table1
 TRUNCATE TABLE Table2
...
 Что нибудь ENABLE
...
Рейтинг: 0 / 0
Очистить базу данных. TRUNCATE TABLE с Foreign Keys
    #39934531
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B,

авторВ этих таблицах нет ссылок по ключу, т.к. они пусты.

Заранее это не известно.
...
Рейтинг: 0 / 0
Очистить базу данных. TRUNCATE TABLE с Foreign Keys
    #39934532
andy st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valery_B

Я надеялся, что есть что то типо такой команды:
Код: sql
1.
2.
3.
4.
5.
 Что нибудь DISABLE
 TRUNCATE TABLE Table1
 TRUNCATE TABLE Table2
...
 Что нибудь ENABLE


ну дак
Код: sql
1.
2.
3.
4.
drop по списку
TRUNCATE TABLE Table1
TRUNCATE TABLE Table2
create по списку


на create за одно проверится понимание схемы бд и степень рукожопства
...
Рейтинг: 0 / 0
Очистить базу данных. TRUNCATE TABLE с Foreign Keys
    #39934590
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B
Можно ли не удаляя сотни внешних ключей очистить эти таблицы ?
delete
...
Рейтинг: 0 / 0
Очистить базу данных. TRUNCATE TABLE с Foreign Keys
    #39934660
Фотография StarikNavy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B,

если справочники пустые

Код: sql
1.
delete from Clients 
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Очистить базу данных. TRUNCATE TABLE с Foreign Keys
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]