Я получаю эту ошибку при генерации базы данных из кода Entity Framework First.
Я не видел никаких проблем со скриптом:
alter table [dbo].[Votes] add constraint [Post_Votes] foreign key ([Post_Id]) references [dbo].[Posts]([Id]) on delete cascade;
alter table [dbo].[Votes] add constraint [User_Votes] foreign key ([Voter_Id]) references [dbo].[Users]([Id]) on delete cascade;
Каждая ссылка на разные таблицы!
У меня может быть только один каскад для удаления на таблицу?
Edit: I think I found the problem, the bug is EF:
Если у меня есть 3 таблицы: пользователи, сообщения и голоса.
А отношения:
Post.AuthorId -> User.Id
Votes.PostId -> Post.Id
Votes.UserId -> User.Id
Sql правильно генерирует ошибку, потому что если я удалю сообщение, у меня будет 2 пути к Голосам: Пользователь -> Голосовать и Пользователь -> Сообщение -> Голосовать
Но структура сущностей не обнаруживает это и генерирует внешний ключ 3 с помощью каскада удаления.