Выполнить пакет SSIS с NOCHECK

Я пытаюсь импортировать ряд таблиц, связанных через FK, — я хочу, чтобы импорт игнорировал эти ключи (NOCHECK), но я получаю эту ошибку.

[Выполнение задачи SQL] Ошибка: выполнение запроса «TRUNCATE TABLE [dbo]. [Пользователи]» не удалось со следующей ошибкой: «Невозможно усечь таблицу «dbo.Users», поскольку на нее ссылается ограничение FOREIGN KEY.». Возможные причины сбоя: Проблемы с запросом, неправильно задано свойство "ResultSet", неправильно заданы параметры или неправильно установлено соединение.

У меня есть контрольные ограничения «не отмечены» - если я выдаю команду sql, чтобы удалить ограничение, импорт работает, поэтому похоже, что SSIS не работает так, как предполагалось.

Я открываю пакет (в оболочке vs10 — datatools), который был создан с помощью мастера импорта/экспорта, fwiw.

OLEDB-драйвер?


person justSteve    schedule 17.08.2012    source источник


Ответы (1)


SSIS работает так, как должно. Это точно такое же поведение, которое вы получите в Management Studio или любом другом исполнении SQL. См. ответ здесь: https://stackoverflow.com/a/253858/236348

Даже с отключенными проверочными ограничениями вы не можете усечь таблицу с внешними ключами.

person William Salzman    schedule 18.08.2012