В чем разница между слабым объектом и подклассом?Слабая сущность против подкласса, в чем разница?
Спасибо заранее!
В чем разница между слабым объектом и подклассом?Слабая сущность против подкласса, в чем разница?
Спасибо заранее!
В расширенных моделях ER, которые поддерживают подклассы ответа, который вы ищете, вероятно, связаны с некоторыми предположениями о ключах в каждом конкретном случае:
Если объект А является подкласс то ключ (или ключа) А состоит из одних и тех же атрибутов в качестве ключа в другой сущности Б.
Если предприятие А является слабой сущность, то некоторое подмножество ключа (или ключа) из A consis ц один и те же атрибуты, как ключ в других организациях B.
Как много моделирования ER, эти вещи условность обозначений, которые не всегда очень точно определены или последовательно используется. Использование термина подкласс может быть даже сомнительным - многие пользователи моделей ER будут использовать термин подтип вместо этого.
Вы отметили свой вопрос relational-database
, но это, безусловно, не концепции реляционной модели, они являются концепциями моделирования ER.
Ответы на это не единообразны во всей доступной литературе. Так я это узнал.
Слабая сущность требует отношений с другим объектом, чтобы иметь личность. Возьмем заказы и позиции в заказе. Используя только натуральные ключи, идентификатор позиции - номер заказа и номер строки, например, строка порядка 54321. У вас не может быть позиция, которая не является частью заказа, потому что у нее нет идентификатора.
Конечно, вы всегда можете использовать функцию autonumber для СУБД, чтобы присвоить кажущуюся идентичность каждой строке, когда она вставлена. Но это не доказывает, что сущность имеет идентичность в реальном мире.
Подкласс не является отдельным объектом, а является подмножеством экземпляров в каком-либо другом объекте. Рассмотрим домашних животных, собак и кошек. Могут быть атрибуты, относящиеся к собакам, но не кошки, и наоборот. (есть много подклассов домашних животных, кроме собак и кошек, но я просто делаю это просто).
Я рад, что вы отметили разницу между моделированием ER и реляционным моделированием. Похоже, преобладающее мнение состоит в том, что они - одно и то же. Я думаю, что что-то ценное будет потеряно, если противоположная точка зрения исчезнет. –