Sql 一个表的多个一对多关系

Sql 一个表的多个一对多关系,sql,database-design,Sql,Database Design,我是数据库设计新手。我看过这个问题 我有同样的问题,在我的例子中,我有一个表“风险”,它有3个属性,具有一对多的关系,一个风险可以有多个“活动”&“渠道”&“交易方法”,所以我创建了这个设计 通过我的研究,我还没有见过这样的数据库设计。我的问题是这个设计是允许的还是对我的案例有什么建议 谢谢。我认为你的思路是对的,但你有一些细节需要解决: 我认为详细频道应该参考频道ID,而不是活动ID,对吗?这看起来像是复制粘贴错误 同样地,交易方法的明细表应参考交易方法ID,而不是活动ID 而交易方

我是数据库设计新手。我看过这个问题

我有同样的问题,在我的例子中,我有一个表“风险”,它有3个属性,具有一对多的关系,一个风险可以有多个“活动”&“渠道”&“交易方法”,所以我创建了这个设计

通过我的研究,我还没有见过这样的数据库设计。我的问题是这个设计是允许的还是对我的案例有什么建议


谢谢。

我认为你的思路是对的,但你有一些细节需要解决:

  • 我认为
    详细频道
    应该参考
    频道ID
    ,而不是
    活动ID
    ,对吗?这看起来像是复制粘贴错误

  • 同样地,
    交易方法
    的明细表应参考
    交易方法ID
    ,而不是
    活动ID

  • 交易方法
    的明细表的表名需要不同的名称。数据库中的每个表都必须具有唯一的名称,并且您已经有了一个具有该名称的表

  • Channel
    Transaction Method
    需要一个
    ID
    列,如果您通过各自的
    ID
    引用它们


是的,先生,我在上传设计图时犯了一个错误,您的所有更正都与我的设计图一致,非常感谢您的回答作为一名软件开发人员,您将学到的一件事是,注重细节非常重要。你需要养成反复检查工作的习惯。在自己的作品中很难看到打字错误和复制粘贴错误,在代码中更是如此。如果你能掌握注意错误的技巧,你就有了一个好的开始!您的模式可以是您想要的,但您真正需要知道的是,该模式是否适合您的业务需求。正如Bill Karwin指出的,您的图表需要更新。请用商业术语解释这些关系。
活动
频道
交易方法
是否表示枚举或查找条目?有这么多的链接是正常的,但教科书上不会有,因为这会使讨论主题复杂化。但是你需要证明它们,这里你没有提供任何证明,所以你让我们做假设。