У меня есть пара больших наборов данных (~ O (1 ТБ)), которые я хочу импортировать в моя база данных. Я использую BULK INSERT
для импорта данных во временные таблицы, затем использую SELECT
и INSERT INTO
, чтобы заполнить настоящие таблицы данными. Это потому, что я хочу изменить порядок некоторых вещей и разбить некоторые файлы данных на логические таблицы. А если эта функция не нужна, я просто BULK INSERT
прямо в свою целевую таблицу.
Я хотел бы проверить, все ли ограничения внешнего ключа соблюдены. Если я отмечаю BULK INSERT
- CHECK_CONSTRAINTS
на этапе импорта, процесс импорта замедляется до обхода.
Есть ли команда для выполнения этого постфактум? У меня очень ограниченное знакомство с SQL Server и базой данных в целом.
Заранее спасибо.
РЕДАКТИРОВАТЬ:
Рекомендуемая литература: Статья MSDN
Чтобы проверить одну таблицу:
alter table YourTable with check check constraint all
Чтобы проверить все таблицы:
exec sp_msforeachtable 'alter table ? with check check constraint all'
Тибор Караси написал отличную статью о доверенных ограничениях: Ненадежные ограничения
Сколько таблиц/внешних ключей вы просматриваете? Рассматривали ли вы возможность написания быстрого пользовательского запроса для проверки потерянных строк?