П. Г. Демидова А. В. Зафиевский А. А. Короткин А. Н. Лататуев Базы данных Учебное пособие


Download 1.32 Mb.
Pdf ko'rish
bet52/94
Sana15.06.2023
Hajmi1.32 Mb.
#1487605
1   ...   48   49   50   51   52   53   54   55   ...   94
Bog'liq
Базы данных

4.2. Функциональные зависимости.
Правила вывода 
Концепция функциональной зависимости между атрибутами 
отношения является фундаментальной, поскольку она лежит в 
основе теории проектирования баз данных. Приведем основные 
положения этой концепции. 
Определение 4.1
. Пусть R – отношение со схемой 


1
2
,
, ,
n
R A A
A

. Набор атрибутов 


1
2
,
, ,
n
Y
A A
A


функционально 
зависит 
от набора 


1
2
,
, ,
n
X
A A
A


тогда и только тогда, когда 


86 
для любого допустимого значения переменной 
R
из того, что два 
кортежа 
R
t
t

2
1
,
совпадают по значению X (
X
t
X
t
.
.
2
1

), следует, 
что эти кортежи совпадают по значению Y (
Y
t
Y
t
.
.
2
1

). Символи-
чески функциональная зависимость записывается как 
Y
X

.
Замечание.
Если атрибуты X составляют потенциальный 
ключ отношения R, то любой атрибут отношения R функцио-
нально зависит от 
X
.
Определение 4.2
. Функциональная зависимость атрибута 
Y
от 
составного атрибута X называется полной, если для любого 
подмножества 
X
X

'
функциональная зависимость 
Y
X

'
не 
выполняется. 
Полную функциональную зависимость будем обозначать как 
Y
X


п
. В этом случае атрибут X называется детерминантом 
зависимости. 
Приведем пример функциональных зависимостей между 
атрибутами. Пусть имеется отношение СТУДЕНТ-ОЦЕНКИ со 
схемой
СТУДЕНТ-ОЦЕНКИ{номер_ст, фам_ст, группа, тел, код_ 
дисц, имя_дисц, час, оценка}, 
где ном_ст – номер студенческого билета, фам_ст – фамилия 
студента, тел – контактный телефон, код_ дисц, имя_дисц, час – 
код, название дисциплины и число часов соответственно, оцен-
ка – оценка на экзамене по данной дисциплине. Первичным 
ключом отношения является составной атрибут


дисц
код
ст
номер
K
_
,
_


Функциональные зависимости 
Зависимость неключевых атрибутов от ключа отношения: 
_
,
_
_
номер ст код дисц
фам ст

_
,
_
номер ст код дисц
группа

 
_
,
_
_
номер ст код дисц
конт тел

_
,
_
номер ст код дисц
час

 
_
,
_
_
номер ст код дисц
имя дисц

 
_
,
_
п
номер ст код дисц
оценка


. 
Зависимость атрибутов, характеризующих студента, от 
номера студенческого билета 
_
_
номер ст
фам ст

_
номер ст
группа

 
_
_
номер ст
конт тел




87 
Зависимость атрибутов, характеризующих дисциплину, от 
кода дисциплины 
_
код дисц
час

_
_
код дисц
имя дисц


Приведенные функциональные зависимости не выводятся из 
конкретного заполнения таблицы. Эти зависимости отражают 
взаимосвязи, обнаруженные между объектами предметной обла-
сти. Они возникают, когда по значениям одних данных в пред-
метной области можно определить значения других данных. На-
пример, зная номер студенческого билета студента, по отноше-
нию СТУДЕНТ-ОЦЕНКИ можно определить его фамилию и 
группу, по коду дисциплины можно определить ее название и 
количество учебных часов по данной дисциплине.
Каждая функциональная зависимость задает дополнительное 
ограничение на данные, которые могут храниться в отношениях, 
т. е. задает правило целостности данных. Для корректности базы 
данных при выполнении операций модификации базы данных 
необходимо, вообще говоря, проверять все ограничения, 
определенные функциональными зависимостями.
Для каждого отношения существует вполне определенное 
множество функциональных зависимостей между атрибутами. 
Причем из одной или более функциональных зависимостей, при-
сущих рассматриваемому отношению, можно логически вывести 
другие функциональные зависимости, также присущие этому 
отношению или, наоборот, установить, что некоторые зависи-
мости являются следствиями других.
Полный набор функциональных зависимостей, выполняю-
щихся для всех допустимых значений отношения, может быть 
очень большим. В этом случае проверка каждой зависимости как 
ограничения целостности данных приведет к недопустимо мед-
ленной работе с базой данных. Поэтому при разработке приложе-
ний необходимо предварительно удалить те зависимости, кото-
рые логически выводятся из других, т. е. являются их следствия-
ми. У. Армстронг отобрал некоторые из свойств функциональных 
зависимостей, которые оказались удобными для решения этой 
задачи. Эти свойства получили название правил или аксиом 
Армстронга. В дальнейшем по практическим соображениям эти 
аксиомы были дополнены еще несколькими аксиомами. 
Совокупный набор аксиом вывода приведен в табл. 4.1. 


88 
Таблица 4.1 

Download 1.32 Mb.

Do'stlaringiz bilan baham:
1   ...   48   49   50   51   52   53   54   55   ...   94




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling