根据我在Intro的教授所说。对于数据库理论来说,没有现有的例子来说明这种情况何时会出现,考虑到它是该理论的一个特定部分,这似乎有点奇怪。
我正在寻找的只是一个示例关系,它是第四范式,这样就可以执行第五范式分解。或者(可能更有可能)对此的一些见解(我的老师没有),这似乎是矛盾的,如果它实际上是不可能创造的……
发布于 2010-11-09 22:49:33
摘自“数据库系统简介”:
考虑一个表{ supplier,part,project},其含义是指定的供应商将指定的部件提供给指定的项目。
如果对于所有供应商sx、所有部件py和所有项目jz存在约束:
。
然后,它必须遵循供应商sx向项目jz提供零件py。
假设这样的约束生效,那么具有三列的单表设计是4NF,而不是5NF。
三列设计的更新异常如下所示:
假设表有两行,(s1,p1,j2)和(s1,p2,j1)。如果我们插入行(s2,p1,j1)而没有插入(s1,p1,j1),那么就会违反约束。
假设表有四行,(s1,p1,j2),(s1,p2,j1),(s2,p1,j1)和(s1,p1,j1)。如果我们删除行(s1、p1、j1),而没有同时删除其他三个行中的一个,那么将再次违反约束。
https://stackoverflow.com/questions/4129985
复制相似问题