5 Иванов И.И. 23.10.28 м 801-12 531-5894 . . . Пенсия 300 300
Рис.7.1. Однотабличная база данных Zgrad.
Проблема вставки
Если появляется новый житель (например, новорожденный), у которого
отсутствуют источники дохода, то для него приходится включать в отношение
Zgrad строку с пустыми значениями полей Source и Money. Но поскольку пустых
(т.е. неопределенных) полей в отношении (таблице) следует избегать, включение
нового жителя откладывается вплоть до появления у него источника дохода.
В спроектированной РБД проблема вставки не возникает. Действительно,
если у нового жителя отсутствует источник дохода, то информация о жителе
будет занесена только в одно отношение PERSON, причем даже атрибут SumD
будет иметь определенное (нулевое) значение, соответствующее
действительности.
Проблема обновления
Отношение Zgrad характеризуется как явной, так и неявной
избыточностью. Явная избыточность заключается в том, что фамилия жителя,
его дата рождения, пол, адрес, номер телефона и значения других атрибутов
могут появиться в отношении несколько раз. Например, у Петровой П.П. адрес
появляется в отношении дважды. Если она сообщит об изменении своего адреса,
то придется проследить изменение ее адреса в обоих кортежах во избежание
противоречивости данных.
В спроектированной РБД эта проблема обновления не возникает: при
изменении адреса Петровой П.П. обновляться будет атрибут Adr в одном
кортеже отношения PERSON и возможно появится новый кортеж с описанием
адреса и характеристик квартиры в отношении FLAT, если в РБД не было
сведений об этой квартире.
Неявная избыточность в отношении Zgrad обнаруживается в том, что один
и тот же номер телефона имеют все жители, живущие в одной квартире.
Например, номер телефона для квартиры с адресом 801-12 появляется в
сочетании с фамилиями трех жителей. Допустим, Иванов И.И. 1978 года
рождения известит чиновника, ведущего базу данных, о том, что его номер