powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Связь между объектами - 2 подхода.
8 сообщений из 8, страница 1 из 1
Связь между объектами - 2 подхода.
    #34661244
Алексей Тихоновский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стандартный пример. Есть 2 объекта. например, физлицо и предприятие. Физлицо может иметь отношение 2 нескольким предприятиям. Предприятие и физлицо представлены таблицами. Связь можно построить 2-я способами - через промежуточную таблицу связей (вариант 1) и путем указания в записях одной таблицы ссылки на другую (вариант 2).
Вариант 1. преимущества - связей можно строить сколько угоднно, не затрагиваются данные, ничего не надо модифицировать в существующих таблицах при добавлении/удалении новых всязей (например, с объектом "жена").
Вариант 2. меньше таблиц участвуют в запросе.

А какие минусы у этих вариантов?
---------------------------------------------------
Я не волшебник, я только учусь....
...
Рейтинг: 0 / 0
Связь между объектами - 2 подхода.
    #34661428
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей ТихоновскийВариант 2. меньше таблиц участвуют в запросе. Здесь плюс не только такой.
При реализации связи на уровне БД - контроль за целостностью данных будет вести сам сервер БД.

В то время как в варианте 1 - придется писать отдельный код, который будет проводить этот контроль.
Например, жена может быть только одна...
Обязательность заполненности поля - тоже придется реализовывать в коде.
Это, собственно, минус.
...
Рейтинг: 0 / 0
Связь между объектами - 2 подхода.
    #34661505
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Например, жена может быть только одна...

Неужели? Перечислить религии, допускающие многоженство, или самостоятельно у google спросите?
...
Рейтинг: 0 / 0
Связь между объектами - 2 подхода.
    #34661647
Алексей Тихоновский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelyЗдесь плюс не только такой.
При реализации связи на уровне БД - контроль за целостностью данных будет вести сам сервер БД.
Согласен
Bely
Обязательность заполненности поля - тоже придется реализовывать в коде.
Это, собственно, минус.
не согласен, связи может и не быть. заполнение поля значением из другой таблицы - таки да, но в 1 варианте это ограничение можно наложить на таблицу связи.
...
Рейтинг: 0 / 0
Связь между объектами - 2 подхода.
    #34664748
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Жисть пошла такая, что почти всего (не только жен) может быть много.
Так что выбора-то и нет, почти.
...
Рейтинг: 0 / 0
Связь между объектами - 2 подхода.
    #34664797
Фотография BULK INSERT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Тихоновский

А какие минусы у этих вариантов?
---------------------------------------------------
Я не волшебник, я только учусь....

зачем вам минусы, спрашивайте плюсы :)

я делаю (применительно подобной задачи)

супертип Entries (Таблица объекты учета) -

EntryID
RecordDate
EnteredBy


Тип Identities (Таблица - частные лица)

IdentityID
EntryID
FirstName
LastName
BirthDate

Тип Entities (Таблица - юридические лица)

EntityID
EntryID
EntityName
LegalStatus
TaxCode
Industry

таблицу связей|подчиненности EntryRelations

RelationID
EntryID
RelatedToEntry
RelationTypeID

все остальное поднимается вьюхами
...
Рейтинг: 0 / 0
Связь между объектами - 2 подхода.
    #34664895
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Тихоновский пишет:
> Вариант 1. преимущества - связей можно строить сколько угоднно, не
> затрагиваются данные, ничего не надо модифицировать в существующих
> таблицах при добавлении/удалении новых всязей (например, с объектом
> "жена").
> Вариант 2. меньше таблиц участвуют в запросе.

Ни минусов, ни плюсов здесь нет.

Вар.1 нужен для реализации связи N:M.
Вар.2 - для реализации связи (со стороны дочерней таблицы) 0..N : 1

Соответственно, какая у тебя связь, так надо и реализовывать.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Связь между объектами - 2 подхода.
    #34686956
Доктор М
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если речь не о DBF-формате, то моё мнение такое: что не решается простыми методами обеспечения целостности, для того созданы триггеры. Вопрос только в том, насколько часто происходит добавление/обновление таблиц.
Вариант с 2 таблицей имхо излишество спокойной жизни.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Связь между объектами - 2 подхода.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]