数据库结构规范化

安奇

我正在阅读规范化数据库结构的概念。我对项目中的以下情况感到困惑。

  1. 我有两个表“ TableA”和TableB
  2. 两个表彼此独立,完全没有关系
  3. 它们代表了完全不同的数据
  4. 这两个表将具有不同的参数。但是,Parameter本身作为对象具有相同的属性。

所以我关心的是我是否应该有一个Parameter正在服务的桌子,TableA并且TableB两者都

或者

我应该有单独的Parameter表两个Table ATable B

结构看起来像这样

情况一:

TableA
ID
Name
Description

TableB
ID
Name
SomeFlag

Parameter
ID
TableA_ID
TableB_ID
Name 
Description
Type

案例二

TableA
ID
Name
Description

Parameter_A
ID
TableA_ID
Name 
Description
Type

TableB
ID
Name
SomeFlag

Parameter_B
ID
TableB_ID
Name 
Description
Type

我个人更喜欢案例一,因为创建另一个代表相同类型数据的表确实有意义。

按照规范化的概念,我们应该有一个仅代表一件事的表。所以我想我应该只有一个参数表。但是,如果该表的含义与TableA的视图完全不同,而与TableB的视图完全不同,那又会怎样呢?

加里·W

我将使用第一种情况,但要进行一些更改。参数实体确实包含一件事,即表的参数。参数条目的实例应仅与一个表相关(根据您对它们不相关的分析)。

Parameter
----------
PK Param_ID 
FK Main_Table_ID 
Main_Table_name (A or B)
param_Name 
param_Description
param_Type

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章