Реляционная модель данных
Избыточность данных и аномалии обновления
Download 372 Kb.
|
Conn&Begg
Избыточность данных и аномалии обновления. Основная цель проектирования реляционной БД заключается в получении некоторого набора отношений посредством группирования атрибутов. Это нужно сделать так, чтобы минимизировать избыточность данных и тем самым сократить объем памяти, необходимой для физического хранения таблиц.
Проблемы, связанные с избыточностью данных, можно проследить на примере таблицы StaffBranch, которая описывается следующим образом: StaffBranch(staffNo, sName, position, salary, branchNo, bAddress) В рассматриваемой таблице содержатся избыточные данные, поскольку сведения об адресе филиала компании повторяются в записях, относящихся к каждому сотруднику этого филиала. При работе с такими таблицами могут возникать проблемы, которые называются аномалиями обновления, причем различают три вида аномалий. Аномалии вставки. При добавлении сведений о новом сотруднике в таблицу StaffBranch потребуется указать и сведения о филиале, в котором будет работать этот сотрудник. Существует вероятность того, что при вводе этих данных будут допущены ошибки, приводящие к несоответствиям (противоречиям) в БД. Для вставки сведений о новом филиале, в котором еще не имеется собственных сотрудников, потребуется в соответствующей записи присвоит значение NULL всем атрибутам, предназначенным для описания персонала, включая и табельный номер сотрудника (staffNo). Однако в таблице StaffBranch атрибут staffNo является первичным ключом, поэтому такая попытка противоречит требованиям целостности данных и будет отклонена. Таким образом, аномалиями вставки обусловлена невозможность ввода новых данных в таблицу по причине отсутствия других данных. Аномалии удаления. При удалении из таблицы StaffBranch строки с данными о последнем сотруднике некоторого филиала полностью исчезают из БД и сведения об этом филиале. Таким образом, аномалии удаления приводят к непреднамеренной потере данных при удалении других данных. Аномалии коррекции (обновления). При попытке изменить значение одного из атрибутов (например, адрес) для некоторого филиала компании в таблице StaffBranch потребуется проделать эту операцию сразу для всех сотрудников рассматриваемого филиала. Если такая модификация затронет не все требуемые строки таблицы, то в БД возникают противоречия. Таким образом, аномалии коррекции создают предпосылки для противоречий, обусловленных избыточностью данных и их частичным обновлением. Download 372 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling