dia: в нотации Чена, что такое atts с точками и для чего нужны многозначные atts?

Я смотрю на эту картинкуи чувствую, что знаю, что происходит, пока не вижу "PlayersIn" и "Foliage". Листва является атрибутом с двойной линией, потому что это multivalued. Что это значит? Как это выглядит в реальном запросе к базе данных? Я не знаю, на что указывает пунктирная линия "PlayersIn". Не могли бы вы объяснить, что это означает и когда это полезно? Что это значит, как выглядит запрос, почему он важен и т. д.?


person Wolfpack'08    schedule 20.01.2012    source источник


Ответы (1)


*Важное примечание: ссылки содержат java, но это веб-сайты с расширением .ca, поэтому, скорее всего, они безопасны.

Foliage является многозначным, и я до сих пор не уверен, зачем кому-то это делать. Я прочитал документацию, здесь, по нотации Чена, в которой говорится: «Возможно, вы захотите сохранить степени в поле с несколькими значениями, чтобы показать, что кто-то имеет более одной степени, например, степень бакалавра и степень магистра». Я не понимаю, почему внешний ключ для типов степеней не используется с таблицей зависимостей, employeeID x degreeID? Может быть, потому что менее запутанно иметь только одну таблицу? Что касается «листвы», я подумал: «Может быть, есть много видов листвы, и это неважно для людей. Может быть, быстрее использовать поле с несколькими значениями, потому что соединения не нужны».

Что касается желтого атрибута, обведенного точками, то это derived attribute. . Производные атрибуты — это атрибуты, которые можно получить путем анализа других атрибутов. Иногда производные атрибуты перечислены для удобства человека. Я не уверен, что это только вопрос элегантности, или это может как-то ускорить код.

person Wolfpack'08    schedule 21.01.2012