繁体   English   中英

数据库设计:单个数字属性的自己的表?

[英]Database design: Own table for single number attribute?

我们将在我们的域 model 中引入一个“级别”属性,该属性可以分配给某个实体。 例如,目前我们有一个实体 A,它现在可以有一个或多个级别。 级别是一个简单的数字,因此 A 可以有级别 1、3、4 等。

我无法在以下替代方案之间做出决定:

  1. 创建一个新的“级别”表,它只包含……嗯……基本上是 ID,或者可能还有“级别值”列(这是一个简单的数字),所以它看起来像这样:
ID 价值
1 1
2 2

然后需要一个A和Level之间的映射表。 好吧,准确地说,在我的情况下,需要一个额外的映射表,因为 A 已经参与了一个映射,并且这个映射应该有一个级别值(不是 A 本身)。

  1. 只需将 integer 数组添加到 A(或映射 A 的一部分)以分配级别。

第一种解决方案的优点是可能的级别值由该表的条目固定。 因此,如果定义了 4 个级别,则永远无法添加 5 级。 缺点是嵌套更多的数据 model 带有一个简单的表,基本上只存储一个数字而没有任何附加属性。

第二种解决方案的优点是数据 model 更容易理解,但可以添加任何级别(至少没有约束)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM