📜  数据库冗余问题

📅  最后修改于: 2021-09-27 15:46:54             🧑  作者: Mango

冗余意味着在数据库中有多个相同数据的副本。当数据库未规范化时会出现此问题。假设学生详细信息属性表是:学生 ID、学生姓名、学院名称、学院排名、选择的课程。

可以看出,属性学院名称、学院排名、课程的值正在重复,这可能会导致问题。冗余导致的问题有:插入异常、删除异常、更新异常。

1. 插入异常——
如果必须插入尚未决定课程的学生详细信息,则在为学生决定时间课程之前无法插入。

如果在不向记录中添加一些额外的不相关数据就无法插入数据记录时,就会发生此问题。

2. 删除异常——
如果删除此表中学生的详细信息,那么大学的详细信息也将被删除,这在常识上是不应该发生的。
当删除数据记录导致丢失一些作为从表中删除的记录的一部分存储的无关信息时,就会发生这种异常。
删除某些信息而不丢失表中的其他一些信息是不可能的。

3. 更新异常——
假设如果大学的排名发生变化,那么更改将必须遍布整个数据库,这将非常耗时且计算成本高。

如果所有地方都没有更新,那么数据库将处于不一致状态。

参考资料 – practice.geeksforgeeks.org