SQL 数据库架构设计标签
SQL database schema design tags
这是我刚刚制定的数据库模式。
- 一种啤酒属于一个类别。
- 一个类别由多个标签组成。
- 一种啤酒有多个标签。
- 一个标签可用于多种啤酒(多对多)。
约束:
您不能将标签添加到不属于这些标签所关联类别的啤酒。
这个设计在约束方面是否正确?这是我应该在我的代码中处理的事情吗?
鉴于您的限制,是的,这个设计是正确的。
这种设计还要求每个标签只能属于一个类别。类别和标签之间没有多对多。
You cannot add tags to a beer that does not belong to the category those tags are associated with.
必须通过应用逻辑强制执行此规则。数据库设计中的任何内容都不能阻止将啤酒分配给未分配给该啤酒的类别标签。这不是您设计中的缺陷,而是它的本来面目。关系数据库设计本身不能强制执行每一种规则或约束。
鉴于 user
、tag
和 category
的概念在您的简短描述中是多么模糊,我们没有进一步的建议或进一步的想法需要考虑无法理解业务 problem/context.
这是我刚刚制定的数据库模式。
- 一种啤酒属于一个类别。
- 一个类别由多个标签组成。
- 一种啤酒有多个标签。
- 一个标签可用于多种啤酒(多对多)。
约束: 您不能将标签添加到不属于这些标签所关联类别的啤酒。
这个设计在约束方面是否正确?这是我应该在我的代码中处理的事情吗?
鉴于您的限制,是的,这个设计是正确的。
这种设计还要求每个标签只能属于一个类别。类别和标签之间没有多对多。
You cannot add tags to a beer that does not belong to the category those tags are associated with.
必须通过应用逻辑强制执行此规则。数据库设计中的任何内容都不能阻止将啤酒分配给未分配给该啤酒的类别标签。这不是您设计中的缺陷,而是它的本来面目。关系数据库设计本身不能强制执行每一种规则或约束。
鉴于 user
、tag
和 category
的概念在您的简短描述中是多么模糊,我们没有进一步的建议或进一步的想法需要考虑无法理解业务 problem/context.