Database 访问表设计-两个选项-哪一个更好?
我有一个表格,我需要存储来自不同产品实验室的样本分析数据。我有两个选择。我通常会使用选项1,但我想知道是否应该开始使用选项2的版本。对于每个样品,即使是相同的产品,我每周都要求进行不同的测试,但有些是重复的,有些不是。下面是我可以使用的选项 选项1 选项2 TestID将链接到一个包含TestID编号和测试名称的表。选项#2永远不会有空字段值,但会有更多行。选项#1将有许多空值,但每个样本的所有值将一起排成一行。随着我对数据库的理解加深,我认为选项2就是它们的全部内容。最后要注意的一点是,虽然我在上面的示例中有四个测试,但实际上是50+。谢谢 那么,选项2更加规范化。以后再添加其他测试将很容易。Database 访问表设计-两个选项-哪一个更好?,database,database-design,ms-access-2007,Database,Database Design,Ms Access 2007,我有一个表格,我需要存储来自不同产品实验室的样本分析数据。我有两个选择。我通常会使用选项1,但我想知道是否应该开始使用选项2的版本。对于每个样品,即使是相同的产品,我每周都要求进行不同的测试,但有些是重复的,有些不是。下面是我可以使用的选项 选项1 选项2 TestID将链接到一个包含TestID编号和测试名称的表。选项#2永远不会有空字段值,但会有更多行。选项#1将有许多空值,但每个样本的所有值将一起排成一行。随着我对数据库的理解加深,我认为选项2就是它们的全部内容。最后要注意的一点是,虽然我
另外,如果您有50多个测试,应用程序设计将更容易 顺便说一句,我很想使用TestCode而不是TestID。代码将是测试的2-3个字母表示。它将占用更多的空间和CPU,但实际上两者都可以忽略不计。如果你必须直接查看表格,阅读起来会更容易。好吧,选项2更规范化。以后再添加其他测试将很容易。
另外,如果您有50多个测试,应用程序设计将更容易
顺便说一句,我很想使用TestCode而不是TestID。代码将是测试的2-3个字母表示。它将占用更多的空间和CPU,但实际上两者都可以忽略不计。如果你必须直接查看表格,阅读起来会更容易。从样本判断,我怀疑即使是完整的测试名称也不会有什么坏处。保存一个完整性测试表是很容易的,TestID与TestCode或TestName并没有真正困扰我。我平均每周有1100个样本,其中一些样本进行了1次测试,而另一些样本进行了12次测试,甚至更多。一个后续问题:如果我有5个测试,所有的东西都得到了怎么办?我是否仍然使用选项2,或者对于5使用类似于表的选项1,对于任何附加测试使用类似于表的选项2…?我认为您应该坚持使用选项2,创建代码或查询以附加标准测试绝非难事。我同意,这并不难。我喜欢只使用一张桌子的一致性。谢谢你的帮助!根据样本判断,我怀疑即使是完整的测试名称也不会有什么坏处。保存一个完整性测试表是很容易的,TestID与TestCode或TestName并没有真正困扰我。我平均每周有1100个样本,其中一些样本进行了1次测试,而另一些样本进行了12次测试,甚至更多。一个后续问题:如果我有5个测试,所有的东西都得到了怎么办?我是否仍然使用选项2,或者对于5使用类似于表的选项1,对于任何附加测试使用类似于表的选项2…?我认为您应该坚持使用选项2,创建代码或查询以附加标准测试绝非难事。我同意,这并不难。我喜欢只使用一张桌子的一致性。谢谢你的帮助!
SampleID pH Solids Calcium Nitrogen
3755 4.2 20.6 15.8
3756 4.35 15.7 12.2
SampleID TestID TestValue
3755 1 4.2
3755 2 20.6
3755 3 15.8
3756 1 4.35
3756 3 15.7
3756 4 12.2