1
4
假设AB是r1中的一个键,a是r2中的一个键,那么模式似乎在6NF中。关系数据库字典(日期)将非规范化定义为:
基本上,规范化/非规范化是关于使用 投影 和 参加 操作员。在本例中,您有一个由不同运算符引起的冗余:求和。我认为,原则上,对于除了投影和连接之外的运算符,甚至对于求和这样的非关系函数,都很可能形成一种“规范化”理论。然而,这并不是规范化的常规定义,在没有任何合理依据的情况下,我认为我们应该应用上述报价中日期定义的技术意义非规范化。 |
2
4
你对r2中D列的定义是“r1中所有Cs的和,其中a from r1等于a from r2”,这是对D的一个约束。更正式地说,这里是求和,是投影,是选择,
因为这个约束既不是域约束也不是键约束,
DKNF是我所知道的唯一一种没有用单一关系定义的标准形式,主要是因为它是用约束而不是依赖来定义的。 |
3
2
所以r2是r1的函数,这意味着r2是 物化视图 r1的功能
在这个例子中
codd关于规范化的工作中没有涉及到视图,但我认为他确实写过这些视图 将视图具体化通常是出于缓存的原因,有些人可能认为这是一种非规范化的形式,因此有一些文章讨论了如何自动决定将哪个视图具体化,从而使它成为数据库可以用来实现视图的功能,以使它们有时更快 但是由于视图的更新通常是不允许的,尽管我认为我读到了codd说的一些东西,比如所有可以更新的视图应该是可以更新的,并且有一些关于在一些复杂的情况下让它工作的论文 |
4
1
我认为这对关系违反了第五范式。 R2是R1的投影。有人认为SUM超出了关系模型的范围。在本例中,SUM是COUNT的一个小扩展,它在关系模型的范围内。 |