CLAIM – научно-образовательный кластер |
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Филиппович АндрейВзаимные функциональные зависимости
|
Сотрудник | Зарплата |
Невезинский | 1000 |
Почтов | 780 |
Саркисьян | 1000 |
Трифонов | 550 |
Сотрудник | N_Кредитки |
Почтов | 11153 |
Саркисьян | 11154 |
Трифонов | 11155 |
Сотрудник | Зарплата | N_Кредитки |
Невезинский | 1000 | Null |
Почтов | 780 | 11153 |
Саркисьян | 1000 | 11154 |
Трифонов | 550 | 11155 |
Сразу после "оптимизации" в результирующем отношении появится кортеж, который имеют пустое (неопределенное) значение. Реляционное отношение, да и ФЗ (A-> BС) таких кортежей не поддерживают, поэтому такая запись должна автоматически удалиться.
Большинство современных СУБД поддерживают трехзначную логику (с использованием Null значений), поэтому запись может не пропасть. Однако наличие неопределенных значений приводит к появлению неоднозначности в запросах и программах.
Таким образом, свободно применять правила Армстронга можно только для проектируемой БД, не имеющей данных. При реструктуризации необходимо использовать Null-значения.
Это замечание существенно для баз данных с динамически изменяемой структурой, к которым можно отнести современные объектно-реляционные разработки.
© НОК CLAIM, 2006-2012. Замечания, вопросы и сведения об ошибках просим сообщать в форуме или присылать администратору сайта.
|