我在此项目中使用dotnet和mvc。
在我的数据模型中,有多个级联路径,因此,标题出现错误。当我尝试将FK从Orders
表添加到Business
表时,会发生这种情况。
我的数据模型:
例如,假设我有一个可以管理多个理发店的网络平台。每个理发店都是我数据库中的一家企业。我站点中的用户可以是客户(用户),理发店所有者(企业所有者)和理发师(提供者)。
现在,如您所知,从用户表到订单表有多个路径。
从订单到提供者的FK设置为在删除时设置为null。不过,由于我们拥有FK到企业版(拥有与用户连接的所有者),所以我仍然受阻。
错误:
执行DbCommand失败(16ms)[Parameters = [],CommandType ='Text',CommandTimeout = '30']创建表[顺序]....);
在表'Order'上引入FOREIGN KEY约束'FK_Order_Business_BusinessId'可能会导致循环或多个级联路径。指定ON DELETE NO ACTION或ON UPDATE NO ACTION,或修改其他FOREIGN KEY约束。
无法创建约束或索引。请参阅先前的错误。
正在寻找诸如更新模型或迁移文件之类的dotnet级别的解决方案。我听说过触发器,但不确定如何通过asp实现它。
可选:我考虑过的想法:将orders表划分为3个表:订单(订单编号pk,时间戳)CustomersOrder(Order_id fk,customer_Id)BusinessOrder(Orderid fk,businessID,ProviderId)
如果你们有什么,我很高兴听到想法:)
[我想我没有其他选择,我将Order的模型划分为3个模型:Orders,CustomerOrder,BusinessOrder = 3个表。