рассмотрите следующие атрибуты, которые для ясности были сопоставлены с буквой как

A - flight_date
B - plane ticket price
C - source_airport_country
D - ticket holder names
E - address 
F - source airport
G - Pilot_name
H - Pilot_grade
I - Plane_id

Существует функциональная зависимость между plane_id, датой полета и именем пилота (если я знаю дату полета и используемый самолет, я могу найти конкретного пилота, совершившего этот рейс). т.е.

AI --> G

Какие другие функциональные зависимости существуют среди этих атрибутов

ответы должны использовать буквы для обозначения атрибутов и должны выглядеть так: AI --> G

Для отношения R(A,B,C,D,E,F,G,H,I), (т.е. атрибуты выше) и используя найденные выше функциональные зависимости найдите, используя алгоритм определения ключа, те атрибуты, которые : 1. Определенно часть ключа для R, 2. Определенно не часть ключа для R, и 3. Возможно, в ключе для R. Наконец-то получить ключ для R.


person james dunne    schedule 14.08.2015    source источник
comment
Извините, я не могу понять, чего вы здесь пытаетесь достичь, но при реалистичном назначении атрибутов F-источник неясен для определения. Что содержит источник? Во-вторых, пилоту нужен идентификатор. На имена и даже имена в сочетании с именами полагаться нельзя. Вам нужен уникальный идентификатор для пилота.   -  person Mugé    schedule 14.08.2015
comment
о, извините, источник, если для исходного аэропорта   -  person james dunne    schedule 14.08.2015
comment
muge, это просто задача, которую поставили, это другие таблицы, но в этом конкретном вопросе я должен найти какие-либо функциональные зависимости между данными таблицами   -  person james dunne    schedule 14.08.2015
comment
Чтобы привести один пример, вы можете настроить список аэропортов для определенной страны и какие самолеты приземляются в определенном аэропорту: I-›CF, это может быть расширено по датам и пилотам. Все еще не уверен, что я на правильном пути в том, чего вы хотите достичь. Вы ищете реалистичный сценарий зависимости?   -  person Mugé    schedule 15.08.2015
comment
да, вы пишете по линиям, просто я действительно плохо замечаю эти ха-ха   -  person james dunne    schedule 15.08.2015
comment
Просто подумайте о реалистичном сценарии. Чтобы привести пример, с которого вы можете продолжить мозговой штурм, 1. Существуют аэропорты прилета и вылета, обслуживающие внутренние рейсы или рейсы из других стран, также в зависимости от размера самолета, некоторые из которых не могут приземлиться в меньших/прибывающих аэропортах. 2- Пилот, который летит в страну, не может быть доступен для другого рейса из другой страны, поэтому дата/пилот/аэропорт — это еще один атрибут для работы. 3- Владельцы билетов не могут лететь из страны, которая является их пунктом назначения, им нужна страна отправления, которая совпадает с рейсами/датами вылета/возврата. Я надеюсь, что это поможет :) удачи!   -  person Mugé    schedule 15.08.2015
comment
Это похоже на домашнее задание...   -  person Unome    schedule 15.08.2015
comment
У нас очень разные определения «ясности».   -  person Strawberry    schedule 15.08.2015
comment
Итак, как вам сказали делать это? Где вы застряли на каком-то ресурсе из гугления '(найти ИЛИ определить) (fds ИЛИ функциональные зависимости)'? Если вы не понимаете ссылку, задайте вопрос о первом, что вы не понимаете. И что такое все FD и не FD, которые, по вашему мнению, присутствуют, и почему?   -  person philipxy    schedule 16.08.2015


Ответы (1)


Из этого ответа:

Отношения и ситуации Re приложений:

Вместе прикладные отношения и ситуации определяют как правила, так и FD (и другие ограничения)! Это просто вещи, которые верны для каждой ситуации приложения или каждого состояния базы данных (т. е. значения одной или нескольких базовых таблиц) (которые являются функцией критериев и возможных ситуаций приложения). Затем мы нормализуем, чтобы уменьшить избыточность.

Касательно FD и CK:

Учитывая критерий помещения строк в таблицу или исключения их из таблицы и все возможные ситуации, которые могут возникнуть, только некоторые значения (наборы строк) могут когда-либо находиться в этой таблице.

Для каждого подмножества столбцов вам нужно решить, какие другие столбцы могут иметь только одно значение для данного значения подстроки для этих столбцов. Когда он может иметь только один, мы говорим, что подмножество столбцов функционально определяет этот столбец. Но каждое надмножество этого подмножества также будет функционально определять его, так что количество случаев сокращается. И наоборот, если данный набор не определяет столбец, то никакое подмножество набора не определяет. Кроме того, вы можете думать об уникальности наборов столбцов; тогда все остальные столбцы функционально зависят от этого набора. Такой набор называется суперключом.

Только после того, как вы определили FD, вы можете определить ключи-кандидаты! CK — это суперключ, который не содержит суперключа меньшего размера. (Наличие CK и суперключей также является ограничением.) Мы можем выбрать CK в качестве первичного ключа.

См. этот ответ и этот ответ (и другие мои, связанные с нормализацией).

person philipxy    schedule 16.08.2015