|
4 / 4 / 0
Регистрация: 01.11.2013
Сообщений: 216
|
||||||||||||||||||||||||||
Не могу удалить запись из таблицы, которая является внешним ключом21.09.2022, 15:31. Показов 1363. Ответов 11
Метки нет (Все метки)
Добрый день! Использую EntityFramework. Пытаюсь удалить строку из таблицы "Reserve", поле ReserveId является внешним ключом для таблицы Signal. Получаю ошибку: "The DELETE statement conflicted with the REFERENCE constraint "FK_Signal_Reserve_ReserveId"..." Вот, как выглядит запрос, создающий таблицу сигнал:
Были мысли о том, что Set Null при наличии внешнего ключа в виде nullable-войства - стандартное поведение, но откуда тогда берется моя ошибка? Помогите!
0
|
||||||||||||||||||||||||||
| 21.09.2022, 15:31 | |
|
Ответы с готовыми решениями:
11
Заполнение таблицы с внешним ключом Проблема с внешним ключом таблицы
|
|
14308 / 9389 / 1355
Регистрация: 21.01.2016
Сообщений: 35,409
|
|
| 21.09.2022, 17:11 | |
|
Vanka03, вы базу через миграции создаёте что ли?
0
|
|
|
4 / 4 / 0
Регистрация: 01.11.2013
Сообщений: 216
|
|||
| 21.09.2022, 21:02 [ТС] | |||
|
Добавлено через 12 минут
0
|
|||
|
14308 / 9389 / 1355
Регистрация: 21.01.2016
Сообщений: 35,409
|
||||
| 22.09.2022, 05:55 | ||||
|
0
|
||||
|
4 / 4 / 0
Регистрация: 01.11.2013
Сообщений: 216
|
|||||||
| 22.09.2022, 08:06 [ТС] | |||||||
|
P.S. каскадное удаление не подходит.
Мы отдаляемся от темы, или мне кажется?)
0
|
|||||||
|
14308 / 9389 / 1355
Регистрация: 21.01.2016
Сообщений: 35,409
|
|||
| 22.09.2022, 09:01 | |||
|
Добавлено через 8 минут Моя рекомендация: создайте базу руками. С какой нужно схемой. Или возьмите ту, что вам EF сгенерировал и руками поправьте. И сделайте бекап. Чтобы переиспользовать её и далее.
1
|
|||
|
|
||
| 22.09.2022, 10:12 | ||
|
Модель Reserve и его SQL скрипт. Мои предположения - вы не сказали какой тип БД. Вдруг он не поддерживает такой режим. - где-то создалась рекурсия и умный EF это нашёл и не прописал в этой модели избыточную настройку.
0
|
||
|
4 / 4 / 0
Регистрация: 01.11.2013
Сообщений: 216
|
||||||||||||
| 22.09.2022, 10:31 [ТС] | ||||||||||||
|
Код модели Reserve:
Что касается типа БД: а какие возможны варианты? Я слаб в этой области, знаю только реляционные) Добавлено через 9 минут Introducing FOREIGN KEY constraint 'FK_Signal_Reserve_ReserveId' on table 'Signal' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
0
|
||||||||||||
|
|
|||||||
| 22.09.2022, 11:53 | |||||||
У коллекции не может быть такого атрибута. Это по сути даже бессмыслено.Ну и вот ответ. Действительно зацикленность. Зачем вы везде ссылок друг на друга наставили. А это помоему и есть главная ошибка.
А в вашем атрибуте даже имя не существующее. Почему через nameof рекомендуют писать - чтобы существующие имена привязывать.
1
|
|||||||
|
4 / 4 / 0
Регистрация: 01.11.2013
Сообщений: 216
|
|||||||
| 22.09.2022, 14:13 [ТС] | |||||||
0
|
|||||||
|
|
||||
| 22.09.2022, 18:12 | ||||
![]() Эту задачу выполняет настоящий внешний ключ внешней таблицы. А то что вы делаете - больше похоже на обратный ключ (InverseProperty). Но он всё равно не должен быть здесь. И настраивается он иначе. А вы или атрибутами настраивайте, или через fluent-api. И вы показываете кусок кода по которому не сделать выводы. Вся магия по миграции от нас скрыта. Или вы не используете вообще моделБилдер? Тогда с чего вы убрали атрибуты?
Вообщем помочь не могу. Вы по капле выдаёте. Но видно что у вас какая-то ересь в настройке. Ради интереса - удалите всё. Создайте две модели, с парой свойств и настройке зависимости. Когда настроите правильно - у вас будет и БД корректная. А пока намешано всего, то даже нет уверенности что сама БД нормально спроектирована.
1
|
||||
|
4 / 4 / 0
Регистрация: 01.11.2013
Сообщений: 216
|
|
| 22.09.2022, 19:02 [ТС] | |
|
Дело в том, что у меня довольно большой Legacy-проект, сложно весь его выдать. Отсюда же и странности с настройкой БД =) Ладно, я попробую поэтапно во всем разобраться, в любом случае, спасибо за попытку помочь и советы!
0
|
|
| 22.09.2022, 19:02 | |
|
Помогаю со студенческими работами здесь
12
Добавление в таблицы объединенные внешним ключом
Не могу удалить запись из таблицы
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|