另一个表的条目的数据库表?

Posted

技术标签:

【中文标题】另一个表的条目的数据库表?【英文标题】:Database tables for entries of another table? 【发布时间】:2009-05-19 19:07:56 【问题描述】:

我正在设计我的 Java 应用程序的新版本(使用嵌入式 H2 数据库),以重新设计我处理数据的方式。这是我的计划:

条目表- 条目 ID 条目名称 属性表- 属性 ID 属性名称 (个人财产)价值表- 值 ID 条目 ID (值列...) (个别条目)值表- 属性名称 (个人财产)价值ID

每个条目可以有多个属性(包括相同类型的多个属性)。每个属性都有自己的存储值的方式。我需要查找为给定条目定义的所有属性,可能还有每个给定属性的所有条目。

这是一个好方法吗?

编辑:我不确定我是否解释得很好......

【问题讨论】:

【参考方案1】:

在我看来,这是一种非常糟糕的数据建模方式,但这是一种非常象牙塔式的看待情况的方式,因为我不必在实践中使用这种模型。顺便说一句,它被称为“实体-属性-值”方法。我不喜欢它的原因是它非常不像模式,因为大多数 SQL 功能必须以某种方式复制。

肯定有时间和地点(例如,如果您打算对许多具有不同模型的对象进行建模)或具有经常更改的模式的对象。但我个人认为这很糟糕。

【讨论】:

是的,我很警惕使用它意味着什么。谢谢你给我起个名字。【参考方案2】:

如果我理解正确,我会使用交集或junction 表而不是您所描述的。

因此,您可以创建一个查询来获取每个 Entery 的所有属性,或每个属性的所有 Enteries。

【讨论】:

【参考方案3】:

我同意 Unknown Google。这也称为Inner-platform effect。

【讨论】:

以上是关于另一个表的条目的数据库表?的主要内容,如果未能解决你的问题,请参考以下文章

从表中选择最新的带时间戳的值,该表对于一个列 id 有多个条目,对于每个唯一的列 id 和来自另一个表的数据

用另一个表中的随机条目更新表的列

postgresql 触发器(策略)根据另一个表的条目更新表

将数据从一个表移动到另一个表,同时在不存在相应行时创建条目

连接两个表,其中一列包含另一个表的多个条目

根据 Redshift 中其他表的条目在表中插入值