dia: в нотации Чена, что такое точки с точками и для чего нужны многозначные объекты? - PullRequest
0 голосов
/ 20 января 2012

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

1 Ответ

0 голосов
/ 21 января 2012

* Важное примечание: ссылки содержат Java, но они являются веб-сайтами .ca и, следовательно, вероятно, безопасны.

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

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

...