Дерекқордағы функционалдық тәуелділік

Функционалды тәуелділіктер деректерді қайталаудан аулақ болыңыз

Дерекқорда функционалдық тәуелділік атрибуттар арасында шектеулер жиынтығын күшейтеді. Бұл қатынаста бір атрибут басқа атрибутты бірден анықтағанда орын алады. Бұл «А» функциясына А-ға тәуелді дегенді білдіреді. Бұл дерекқорға тәуелділік деп аталады.

Бұл қатынаста A B мәнін анықтайды, ал B B-ге байланысты болады.

Неліктен функционалды тәуелділік деректер базасын жасауда маңызды болып табылады

Функционалдық тәуелділік деректердің шынайылығын қамтамасыз етеді. Кестені қараңыз Әлеуметтік қорғау нөмірі (SSN), атын, туған күнін, мекен-жайын және т.б. қоса алғанда сипаттамаларды көрсететін қызметкерлер.

SSN атрибуты аты, туған күні, мекен-жайы және басқа да құндылықтарды анықтайды, себебі әлеуметтік қауіпсіздік нөмірі бірегей, ал аты, туған күні немесе мекенжайы болмауы мүмкін. Біз оны келесідей жаза аламыз:

SSN -> аты, туған күні, мекен-жайы

Сондықтан, аты, туған күні және мекен-жайы SSN-ға функционалды түрде байланысты. Алайда кері мәлімдеме (аты -> SSN) дұрыс емес, себебі бірнеше қызметкер бірдей атқа ие болуы мүмкін, бірақ ешқашан бірдей SSN болмайды. SSN атрибутының мәнін білетін болсақ, тағы бір нақты, нақты жолды енгізіңіз, біз аттың, туған күннің және адрестің мәнін таба аламыз. Бірақ егер біз орнына аты төлсипатының мәнін білсек, SSN-ны анықтау мүмкін емес.

Функционалды тәуелділіктің сол жағында бірнеше атрибут болуы мүмкін. Айталық, бізде көптеген орындар бар бизнес бар. Бізде қызметкер, лауазым, бөлім, орын және менеджер атрибуты бар Қызметкер кесте болуы мүмкін.

Қызметкер жұмыс істейтін жерін анықтайды, сондықтан тәуелділік бар:

қызметкер -> орын

Бірақ орналасуы бірнеше менеджер болуы мүмкін, сондықтан қызметкер мен бөлім менеджерді анықтайды:

қызметкер, бөлім -> менеджер

Функционалдық тәуелділік және қалыпқа келтіру

Функционалдық тәуелділік дерекқордың қалыпқа келтірілуіне ықпал етеді, бұл деректердің тұтастығын қамтамасыз етеді және деректердің қайталануын азайтады. Қалыптасқан жоқ, дерекқордағы деректердің дәл және сенімді болуына кепілдік жоқ.