【发布时间】:2011-08-25 17:29:58
【问题描述】:
我需要存储一个结构,其中 N 个父母将有 1 到 N 个孩子,每个孩子将有 1 到 N 个孩子。我想以相对高性能和高度可扩展的方式将其存储在数据库中,而无需更改数据库架构。
每个父母都必须是唯一的,N 个父母可能有同一个孩子。但是,该孩子可能有不同的孩子,具体取决于父母。 (清如泥?)
这可能更容易描述为 parentA 可能有一个具有某些属性(棕色头发,棕色眼睛)的男孩。 parentb 也有一个男孩,但这个孩子有金色的头发和蓝色的眼睛。我需要以标准化的方式存储每个孩子(男性和女性)和每个属性(头发和眼睛的颜色),并以这样的方式关联它们:当我查询父母时,我会得到他们的所有孩子和这些孩子的属性。
我对 SQL 中的树形结构和分层结构做了一些工作,但我很难以符合我对性能和可扩展性要求的方式来概念化这个特定场景。将定期(如果不频繁)添加子属性和相关属性。 提前致谢。我知道需要澄清。
补充说明
好的,看来可能需要一个不同的示例。让我们使用汽车这个古老的例子。
CarA 和 CarB 都有方向盘、发动机和轮胎。 CarA 的方向盘上有无线电控制装置。 CarB 的方向盘没有。 CarA 有一个六缸马达,CarB 有一个八缸马达。我需要使用该功能的属性来模拟每辆车和每个功能之间的关系。我有帮助吗? -rb
【问题讨论】:
标签: c# sql sql-server sql-server-2008