Обработка других видов отношений
Обработка других видов отношений
Ограничения целостности могут быть применены для других форм отношений, помимо формы один-ко-многим, описанной до настоящего времени.
* Один-к-одному.
* Многие-ко-многим.
* Ссылающееся на себя отношение один-ко-многим (вложенные или древовидные отношения).
* Обязательные варианты любых форм отношений.
Отношение один-к-одному
Структуры один-к-одному могут быть полезными, когда сущность в вашей модели данных имеет множество различных атрибутов, из которых только к некоторым часто осуществляется доступ. Это может резко сократить занимаемую память и время чтения страниц, если хранить случайные данные в необязательных "подчиненных" отношениях, которые используют соответствующие первичные ключи.
Отношение один-к-одному похоже на отношение один-ко-многим в том смысле, что оно связывает внешний ключ с уникальным ключом. Разница здесь в том, что связываемый ключ должен быть уникальным для поддержания отношения один-к-одному - чтобы соединить не более одной зависимой строки с одной родительской строкой.
Обычным является дублирование столбца (столбцов) первичного ключа в подчиненной таблице в качестве внешнего ключа для "родительской".
CREATE TABLE PARENT_PEER (
ID INTEGER NOT NULL,
MORE_DATA VARCHAR(10),
CONSTRAINT PK_PARENT_PEER PRIMARY KEY(ID),
CONSTRAINT FK_PARENT_PEER_PARENT
FOREIGN KEY (ID) REFERENCES PARENT);
Результатом такого дублирования является создание двух обязательных индексов для столбца первичного ключа подчиненной таблицы: один для первичного ключа и один для внешнего ключа. Индекс внешнего ключа сохраняется так, как если бы он не был уникальным.
В версиях 1.0.x и 1.5 оптимизатор игнорирует первичный индекс подчиненной таблицы. Например:
SELECT PARENT.ID, PARENT_PEER.ID,
PARENT.DATA, PARENT_PEER.MORE_DATA
FROM PARENT JOIN PARENT_PEER
ON PARENT.ID = PARENT_PEER.ID;
игнорирует индекс первичного ключа подчиненной таблицы и создает план:
PLAN JOIN (PARENT_PEER NATURAL, PARENT INDEX (PK_PARENT) )
Влияние на производительность "разреженного" ключа (такого, какой использован в этом примере) не может быть сильным. В случае составного ключа эффект может быть значительным, особенно в случае множественных соединений, включающих отношения один-к-одному. Следует рассмотреть использование суррогатного ключа в структурах один-к-одному[51].
! ! !
СОВЕТ. Не будет плохо, если вы решите добавить специальный столбец для подчиненного отношения с целью разделения первичного и внешнего ключей. Это может оказаться полезным и для документирования.
. ! .
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Сдвиг отношений медиа и аудитории
Сдвиг отношений медиа и аудитории Метки: исследования, СМИ, рекламаЗа последние тридцать лет отношения между медиа и их аудиторией существенно изменились.В 1980-е в России было условно два телеканала и относительно однообразный набор контролируемых радиостанций и
Глава 6. Определение отношений
Глава 6. Определение отношений Необходимость отношенийСистема состоит из большого количества классов и объектов. Ее поведение обеспечивается взаимодействием объектов. Например, студент добавляется к курсу, когда на курс поступает сообщение добавить студента. В этом
Операторы отношений
Операторы отношений Итак, предполагая что вы захотите принять грамматику, которую я показал здесь, мы теперь имеем синтаксические правила и для арифметики и для булевой алгебры. Сложность возникает когда мы должны объединить их. Почему мы должны сделать это? Ну, эта тема
Бизнес-ситуация 1.2: проектирование таблиц и отношений
Бизнес-ситуация 1.2: проектирование таблиц и отношений Брэд Джонс понял, что компании Jones Novelties Incorporated необходим способ сохранения информации о клиентах. Он совершенно уверен в том, что большинство его деловых контактов не будут однократными, и поэтому хочет иметь
1. Требования к табличной форме представления отношений
1. Требования к табличной форме представления отношений 1. Самое первое требование, предъявляемое к табличной форме представления отношений, – это конечность. Работать с бесконечными таблицами, отношениями или любыми другими представлениями и организациями данных
3. Схемы отношений. Именованные значения кортежей
3. Схемы отношений. Именованные значения кортежей В теории и практике СУБД понятия схемы отношения и именованного значения кортежа на атрибуте являются базовыми. Приведем их.Схема отношения (обозначается S) определяется как конечное множество атрибутов с уникальными
5. Отношения. Типы отношений
5. Отношения. Типы отношений И наконец дадим определение отношению, как некой вершине пирамиды, состоящей из всех предыдущих понятий. Итак, отношение (обозначается r, от англ. relation – «отношение») со схемой отношений S определяется как обязательно конечное множество
Лекция № 8. Создание базовых отношений
Лекция № 8. Создание базовых отношений Предметом этой лекции будет довольно подробное рассмотрение оператора создания базового отношения. Мы подвергнуть разбору сам оператор в записи на псевдокоде, проанализируем все его составляющие и их работу, разберем способы
6. Модификация базовых отношений
6. Модификация базовых отношений Для успешной и продуктивной работы с различными базовыми отношениями очень часто разработчикам необходимо каким-либо образом модифицировать это базовые отношения.Какие основные необходимые варианты модификации встречаются чаще всего
16.8. Реализация отношений в Core Data
16.8. Реализация отношений в Core Data Постановка задачи Необходимо иметь возможность связывать управляемые объекты друг с другом, например связать контакт Person с каталогом Home, в котором он
Модели отношений доверия
Модели отношений доверия В относительно закрытых системах, таких как небольшие организации и фирмы, можно без труда отследить путь сертификата назад к корневому ЦС. Однако, пользователям зачастую приходится связываться с людьми за пределами их корпоративной среды,
МЫСЛИ: Маркетинг отношений с фотоаппаратом
МЫСЛИ: Маркетинг отношений с фотоаппаратом Автор: Алексей КлимовФотолюбители — натуры тонкие, критики не любят, самокритикой не занимаются. Это было бы их личным делом, но об устройстве творческой души вспомнили маркетологи. После чего выбор цифрового фотоаппарата
Описание отношений и структурирование ПО
Описание отношений и структурирование ПО Другой вопрос связан с тем, какие отношения допустимы между типами объектов. В рафинированной объектной технологии имеются только два отношения: "быть клиентом" и наследование. Они соответствуют различным видам возможных