Невозможно усечь таблицу, потому что на нее ссылается ограничение FOREIGN KEY с помощью ExecuteSqlCommand - PullRequest
0 голосов
/ 18 октября 2018

Я хочу удалить данные из этой таблицы из структуры сущностей

db2.Database.ExecuteSqlCommand("TRUNCATE TABLE [destDepartments]");

, но у меня есть эта ошибка

Невозможно усечь таблицу 'destDepartments', так как онана него ссылается ограничение FOREIGN KEY. '

так как я могу сделать это из EF?

Ответы [ 2 ]

0 голосов
/ 18 октября 2018

Существуют ограничения на использование TRUNCATE TABLE.Одним из них является то, что таблица не может быть вовлечена в связи внешнего ключа с другими таблицами в базе данных.Вместо этого используйте DELETE FROM [destDepartments].

TRUNCATE TABLE и DELETE FROM не являются функционально эквивалентными , но последнее позволит вам очистить таблицу, связанную с другими таблицами в базе данных (при условииссылочная целостность сохраняется).

0 голосов
/ 18 октября 2018

Перед удалением таблицы обязательно удалите все ссылки.

...