2011-12-15 59 views
0

我想为这个模拟数据库定义一个表结构/模式。我一直在想天这个怎么办正常化(不知道它甚至有可能):使用非常广泛的例子mysql:这个数字数据库的表结构?

和值可以是任何

runset | input value | device name | temperature | voltage | measurement name | value 

目前,我只能认为第一次正常化,这就是它...

任何想法?这个表格中的许多值可以是唯一的,并且可以达到6000万行。

+0

如果其中某些列是从别处派生出来的,那么最好还是发布这些源代码,特别是如果它们是表格。建立关系,什么是独特的,如果你期望重复,等等..将是很好的包括在你的文章.. – Nonym 2011-12-15 03:33:14

回答

1

其实你有什么是正确的。

它是一个观察表,所以只需将您的数据放在表中就像您所描述的一样。

你实际上并不需要给一个表作为主键,在你的情况下它看起来并不像你需要的那样,但有些人对此很不舒服,因此系统生成了“ID”列来采取行动因为可能需要主键。

此外,您可任选有(但只有当你确定一个实际需要):

  • 一个“runset”表来保存每个运行的详细信息,如日期,时间,操作人员等,
  • 一个“测量”表格来全面描述每种测量类型。
  • “设备”表中的每个设备(制造商,型号,序列号等)

使用“设备名称”和“测量名称”搁置细节主/外键会工作得很好,以没有必要混淆这些表上生成的“id”。

一个设计良好的模式应该看起来简单明了,不要为错误的设计而误认为复杂和不可靠。

+0

谢谢,只需要这个澄清 – Gordon 2011-12-17 04:25:43