Нормализация для базы данных ER диаграммы
В настоящее время я пытаюсь сделать заданный мне вопрос о задании, который задает мне процесс нормализации. я знаю о 3 нормальной форме. но я застрял с 3-й формой нормализации, потому что я чувствую, что я собираюсь получить аналогичный ответ. если я допустил ошибку в 1NF и 2NF, пожалуйста, дайте мне знать. Кто-нибудь может направить меня с моей формой 3NF?
UNF:
Employee_Id, Employee_Gender, Employee_Position, Employee_Name, Employee_First, Employee_Last, Member_Id, имя_ члена, Member_ First, Member_ Last, Member_ Feedback, Location_Branch_Id, Dvd_Branch_Stock, филиал, расположение, Location_Ra Rental_Overdue, Rental_Dvd_Title, Rental_Status
1NF:
Employee_Id Employee_Gender Employee_Position
Employee_Id Employee_Name Employee_First Employee_Last
Member_Id Member_ Отзыв
Member_Id Member_ Name Member_ First Member_ Last
Location_Branch_Id Location_Area
Location_Franch_Id Dvd_Branch_Stock Branch_Location
DVD_Id, DVD_Quantity
DVD_Id DVD_Title DVD_Genres DVD_Released_Date
Rental_ID Rental_Dvd_Title
Rental_ID Rental_Borrowed_Date Rental_Due_Date Rental_Overdue Rental_Status
2НФ:
Employee_Id Employee_Gender Employee_Position
Employee_Id Employee_Name
Employee_Name Employee_First Employee_Last
Member_Id Member_ Отзыв
Member_Id Member_ Name
Пользователь_ Имя Участник_ Первый Участник_ Последний
Location_Branch_Id Location_Area
Location_Franch_Id Dvd_Branch_Stock
Dvd_Franch_Stock Branch_Location
DVD_Id, DVD_Quantity
DVD_Id DVD_Title
DVD_Title DVD_Genres DVD_Released_Date
Rental_ID Rental_Dvd_Title
Rental_ID Rental_Borrowed_Date
Rental_Borrowed_Date Rental_Due_Date Rental_Overdue Rental_Status
1 ответ
Я вижу проблему с текущей формой таблиц Employee и Member.
Эти таблицы по-прежнему содержат повторяющиеся данные, так как поля Employee_Last и Employee_First и Employee_Name, скорее всего, будут содержать те же данные, что и имена Member_Last, Member_First и Member_Name ', которые зависят от человека, а не от того, является ли он членом или сотрудником.
Что я могу видеть непосредственно, так это то, что вы должны создать табличного человека с идентификатором, именем, первым, последним, полом
PERSON(ID,Name,First,Last,Gender)
EMPLOYEE(ID,Position,Person_ID)
MEMBER(ID,Feedback,Person_ID)
// If a regular member should not give you the gender, you should save the gender in
the employee table as it is not necessary to know for a regular Person.
В противном случае это должно войти в Таблицу лиц. -> Обычно пол зависит от человека, а не от того, является ли он членом или работником.
Для других таблиц я не знаю прямых "зависимостей", но вы можете проверить, находятся ли данные в "полезном" состоянии для решения. Проверьте другие таблицы, чтобы у вас были правильные отношения, и не сохраняйте данные как дубликаты. 'Местоположение <-1: N-> Филиал <-1: N-> DVD<-1: N->Прокат.
Другие источники относительно 3-й формы нормализации. https://www.1keydata.com/database-normalization/third-normal-form-3nf.php
Надеюсь это поможет,
Georg