【问题标题】:Model Database Normalization模型数据库规范化
【发布时间】:2014-07-15 04:50:06
【问题描述】:

我有以下数据,我想将其建模为最佳数据库规范化。

我有一组建筑物,每个建筑物包含一组级别,每个级别包含一组公寓。

  • 建筑物:有编号、名称、高度、颜色
  • 级别:有编号、名称
  • 平面:有编号、名称

我想为这个模型设计一个规范化的数据库。



编辑

这家伙把它建模为:

建筑

Building_Number PK、名称、高度、颜色

等级

Level_Number PK、Building_Number FK、名称

扁平

Flat_Number PK、Level_Number FK、Building_Number FK、名称

如果他有另一个引用 Flat 的表将包含列,以此类推:

Table_ID PK,Flat_Number FK,Level_Number FK,Building_Number FK,......

他说这是数据库的规范化设计,这对性能来说是最好的。

这是最好的设计吗?还是什么?

【问题讨论】:

  • 您是在要求我们为您做作业吗?你为什么不告诉我们你到目前为止做了什么?
  • 嗯,你已经得到了你需要的一切,或者几乎:3张桌子(建筑、水平、平面),添加一个颜色表可能是个好主意,那么你的问题在哪里?
  • 好主意。完成后回来,展示你做了什么,让你的问题更具体。
  • 看看:en.wikipedia.org/wiki/Database_normalization 现在你已经得到了你需要的一切
  • 首先从上面的链接中了解有关数据库规范化的理论概念......存在多种形式的规范化。

标签: sql database oracle normalization denormalization


【解决方案1】:

很简单

建筑

Building_Number PK、名称、高度、颜色

Building_Level

Level_Number PK、Level_Name、Building_Number FK 建筑物(Building_Number)

扁平

Flat_Number PK, Name, Level_Number FK Building_Level(Level_Number)

【讨论】:

    猜你喜欢
    • 2014-08-10
    • 1970-01-01
    • 2021-10-27
    • 2015-02-01
    • 2015-01-28
    • 2022-11-24
    • 2012-10-08
    • 2012-06-21
    相关资源
    最近更新 更多