2015-02-05 2 views
1

Рассмотрим следующую схему реляционной базы данных для библиотеки:В какой нормальной форме данная таблица?

Book (Title,Author,Catalog_no, Publisher, Year, Price) 

со следующими функциональными зависимостями:

I. Title, Author -> Catalog_no 
II. Catalog_no -> Title, Author, Publisher, Year 
III. Publisher, Title, Year -> Price 

Предположим, {Author, Title} является ключевым для схемы. В какой нормальной форме данная схема?

Я думаю, что таблица находится только в 1NF, а не в 2NF. Согласно III FD, атрибут Price частично зависит от ключа из-за зависимости от Title, а не от Author.

Пожалуйста, дайте мне знать ваше мнение.

ответ

1

Номер по каталогу является ключом; он напрямую определяет все, кроме цены, и транзитно через FD 3 он также определяет цену. Поэтому Title + Author также является ключевым, поскольку он определяет номер каталога.

На первый взгляд, если два разных автора написали книгу того же издателя («Дубликативная публикация») в том же году, то книги должны стоить одинаково , даже если он является 50-страничной брошюрой, а другой - 500-страничным томом. Это смешной FD в реальном мире. Однако речь идет не о реальном мире.

С учетом определения Second Normal Form, нет возможности избежать того, что цена не определяется целым ключом, поэтому отношение не находится в 2NF.

Смежные вопросы