Инфологическое проектирование. ER-диаграммы

Материалы к тесту

Обозначения

Инфологическое проектирование. ER-диаграммы - student2.ru Обозначение связей (отображений):

Инфологическое проектирование. ER-диаграммы - student2.ru Обозначение ассоциаций:

– Для ER-диаграмм:

– Многозначные атрибуты обозначаются двойным овалом.

– Производные атрибуты обозначаются прерывистым овалом.

– Изображение сущностей: прямоугольник.

– Изображение связей: ромб.

– Двойная линия – обязательное вхождение в связь, тонкая линия – не обязательное вхождение в связь (в тесте используется не всегда).

Определения

1. Совокупность структурированных данных, предназначенных для машинной обработки и использования многими пользователями – база данных.

2. Является узловой точкой сбора информации, представляет собой основное содержание того явления или процесса, о котором необходимо собрать информацию – сущность.

3. Поименованная характеристика сущности – атрибут.

4. Реляционная база данных состоит из набора таблиц.

5. Тип таблицы, чье содержание выбирается из других таблиц с помощью выполнения запроса – представление.

6. Логическая модель – это концептуальная модель с учетом поддержки её средствами СУБД.

7. Процесс, когда исходное отношение разбивают на новые меньшие отношения, называется декомпозицией.

8. Пошаговый обратимый процесс декомпозиции (разложения) исходных отношений БД на другие, более мелкие и простые отношения, с целью устранения аномалий в БД – нормализация.

СМД

– Модель, которую можно представить как граф с записями в виде узлов и наборами в виде ребер – сетевая модель.

– Основные недостатки СМД:

громоздкая структура памяти

необходимость исключать циклические связи

– Для обеспечения связи (типа М:М) между владельцами и членами набора в сетевой модели используется третий тип записи – связующая запись.

– Пример сетевой модели:

Инфологическое проектирование. ER-диаграммы - student2.ru

ИМД

СегментИБД – это аналог записи в СМД. Сегмент– это поименованная единица данных фиксированной длины, которая может содержать одно или несколько полей. Исходный сегмент – тот, который порождает другой сегмент (узел, тип записи). Порожденный сегмент – тот, для которого есть исходный сегмент.

– Сегменты одного типа в ИМД, которые порождены одним и тем же исходным сегментом, называются (близнецами) подобными сегментами.

– Для приведенной ниже иерархической модели книжного магазина исходными являются сегменты: магазин, отдел, книга. Порожденными являются все, кроме Магазина.

Инфологическое проектирование. ER-диаграммы - student2.ru

– Пример иерархической модели:

Инфологическое проектирование. ER-диаграммы - student2.ru

– Основные недостатки ИМД:

сложность реализации связи М:М

сложность удаления данных

РМД

Домен – это множество значений, которые может принимать атрибут сущности.

Пример определения доменов:

Инфологическое проектирование. ER-диаграммы - student2.ru

Кардинальность отношения– это количество кортежей в отношении (мощность множества). Пример:

Инфологическое проектирование. ER-диаграммы - student2.ru

Правильный ответ: 6 (декартово произведение 2*3=6)

Кардинальность связи: это число вхождений сущности в данную связь (или количество возможных связей для каждой из сущностей, участвующих в связи). Примеры:

· связь между гражданами и паспортами 1:1, т.е. у каждого человека только один паспорт гражданина данного государства и каждый паспорт принадлежит только одному человеку;

· связь между владельцами и автомобилями 1:n, т.е. у каждого автомобиля только один владелец, но у каждого человека может быть много автомобилей;

· связь между детьми и родителями 2:n, т.е. у каждого ребенка двое (биологических) родителей, а у каждого родителя может быть много детей.

Степень отношения – количество атрибутов (столбцов) отношения. Пример;

Инфологическое проектирование. ER-диаграммы - student2.ru

Правильный ответ: 3.

– Термины:

столбец – поле – атрибут

запись – строка – кортеж

таблица – отношение – подмножество декартова произведения – результат запроса.

Примеры:

Лишний термин в списке: столбец, поле, запись, атрибут.

Лишний термин в списке: таблица, отношение, атрибут, подмножество декартова произведения, результат запроса.

Ключ – атрибут или набор атрибутов, который уникально идентифицирует отдельный экземпляр сущности.

Ключи используют для уникальной идентификации записей и установления связей между отношениями, (а также для ускорения работы с записями, исключения дублирования значений уникальных атрибутов, упорядочения кортежей.)

– Вопрос: ключом для записи СОТРУДНИК с атрибутами "Номер паспорта", "Код", "Адрес", "ФИО", "Телефон", "Дата приема на работу" может являться атрибут:

– Телефон

+ составной атрибут "Дата приема на работу"+"ФИО"

– Адрес

– ФИО

– Дата приема на работу

+ Код

+ Номер паспорта

+ составной атрибут "Номер паспорта"+"ФИО"

Полностью составной ключ: состоит только из независимых атрибутов.

– Пример реляционной модели:

Инфологическое проектирование. ER-диаграммы - student2.ru

Операции реляционной алгебры (РА)

– Вспомнить операции РА:

s - селекция (выборка)

p - проекция

´ - декартово произведение

– - разность

È - объединение

Ç - пересечение

><F - соединение по условию F (оно же тета-соединение, Q-join)

>< - естественное соединение, эквисоединение, соединение по эквивалентности

> - полусоединение

É< - левое внешнее соединение

>Ì - правое внешнее соединение

ÉÌ - полное внешнее соединение

– Соединение – это селекция от декартова произведения. Естественное соединение – по условию равенства одинаковых атрибутов.

– Тета-соединение – это обычное соединение. Оно выполняет следующие действия:

· находит декартово произведение отношений

· использует предикат F для проверки результата

– Полусоединение – это соединение, которое выбирает поля только из одной таблицы, а вторую использует лишь для проверки условия соединения.

– Левое открытое (внешнее) соединение: включает все записи левой (первой в списке) таблицы и те записи второй таблицы, которые удовлетворяют условию соединения. Аналогично, правое открытое (внешнее) соединение: включает все записи правой (второй в списке) таблицы и те записи первой таблицы, которые удовлетворяют условию соединения. Полное соединение (FULL JOIN) – это объединение (UNION) левого и правого открытого соединения.

– Вопросы по реляционной алгебре (правильный ответ – на рисунке):

Инфологическое проектирование. ER-диаграммы - student2.ru

Инфологическое проектирование. ER-диаграммы - student2.ru

– Основы реляционного исчисления кортежей (РИ кортежей):

· P(r)=r.КодКниги<026 означает предикат: where r.КодКниги<’026’

· (rÎR){r|P(r)}для РИ кортежей означает, что кортежи r принадлежат отношению R и для кортежей r верно утверждение P.

· {Х|P(Х)} для РИ кортежей означает "те Х, для которых верен предикат Р".

Инфологическое проектирование. ER-диаграммы

– Сущность является независимой, если каждый её экземпляр может быть однозначно идентифицирован без установления связи с другой сущностью. Сущность является зависимой (дочерней), уникальная идентификация её экземпляров возможна только путём установления связи с другой сущностью.

Элемент данных – это поименованная единица данных наименьшей семантической значимости. Экземпляр элемента данных – это некоторое конкретное значение, принимаемое элементом данных.

– Элементам данных присущи следующие два свойства: свойство избыточности и свойство полноты. Первое свойство заключается в том, что один элемент данных может входить в разные записи. Свойство полноты состоит в том, что любой элемент данных может характеризовать полностью или частично предмет, явление, событие.

– Атрибут в концептуальной модели имеет следующие характеристики: наименование, роль, описание.

Связь – это осмысленная ассоциация между сущностями разных типов.

Типы ассоциаций: простая (1), сложная (М) и условная (С).

Ассоциация типа 1 (простая). Ассоциация этого типа определяет однонаправленную связь от элемента A к элементу B, при которой одному и тому же экземпляру A соответствует один и тот же экземпляр элемента B. При этом обратная связь не определена.

Ассоциация типа М (сложная). Определяет однонаправленную связь от элемента A к элементу B, при котором одному и тому же экземпляру A соответствует 0,1 или несколько экземпляров элемента B, при этом обратная связь не определена.

Ассоциация типа C (условная). Для данного экземпляра элемента данных, от которого направлена связь, может не существовать соответствующего экземпляра элемента данных, к которому связь направлена, но если она существует, то относится к единственному экземпляру элемента данных. В данном случае говорят об условной ассоциации или ассоциации типа С. Идентификация, если существует, является уникальной.

Вопросы на типы ассоциаций:

Номер студенческого билета –>1 Группа простая ассоциация

Предприятие –>1 Название предприятия простая ассоциация

Шифр книги –>С Дата списания условная ассоциация

№ студенческого билета –>С Дата отчисления условная ассоциация

Номер студенческого билета –>M Группа сложная ассоциация

Город –>M Предприятие (ПО «Торговля») сложная ассоциация

Вопросы на ассоциации:

Инфологическое проектирование. ER-диаграммы - student2.ru ПО «Библиотека» ассоциация между сущностями Автор и Книга – сложная М

ПО «Библиотека» ассоциация между сущностями Книга и Главн.редактор – условная

ПО «Канцтовары» ассоциация м/у сущн. Фирма-производитель и Изделие – сложная

ПО «Отдел кадров» ассоциация м/у сущностями Начальник и Подчиненный – сложная

Инфологическое проектирование. ER-диаграммы - student2.ru ПО «Торговля» ассоциация м/у сущностями Предприятие и Гендиректор – простая 1

ПО «Отдел продаж» ассоциация между сущностями Товар и Возврат_товара – условная

Инфологическое проектирование. ER-диаграммы - student2.ru ПО «Деканат» ассоциация между сущностями Студент и Дата_защиты – условная С

ПО «Клуб собаководства» ассоциация между сущностями Собака и Порода – простая

– Тип отображения, для которого один экземпляр элемента данных (ЭЭД), от которого направлена связь, идентифицирует несколько ЭЭД, к которым направлена связь, и наоборот – М:М.

– Ассоциации между парой связанных элементов, определенных в обе стороны, представляют собой отображения. Отображения являются традиционным средством для определения характера взаимосвязей между элементами данных, так как описывают двусторонние связи между ними.

– Типы связей (отображений):

1:1 – представляют такой тип связи, когда один экземпляр элемента данных A, от которого направлена связь, идентифицирует один и только один экземпляр элемента данных B, к которому направлена связь, и наоборот. Идентификация уникальна в обоих направлениях. Приведем пример отображения 1:1 для элементов данных СТУДЕНТ и №БИЛЕТА (номер читательского билета).

1:М – под этим отношением подразумевается такой тип связи между элементами A и B, когда одному экземпляру элемента A соответствует 0,1 или несколько экземпляров элемента B. Однако каждому экземпляру элемента B соответствует только один экземпляр элемента A. Идентификация в прямом направлении не обязательно является уникальной. Однако в обратном направлении любой экземпляр элемента данных B, к которому направлена связь, идентифицирует один и только один экземпляр элемента данных A, от которого направлена связь.

М:1 – обратная по отношению к 1:М.

М:М – с помощью отображения многие ко многим определяются такой тип связи, при которых каждому экземпляру A может соответствовать 0,1 или несколько экземпляров элемента B и наоборот. Связь, не идентифицирующая в обоих направлениях.

Вопросы:

ПО «Видеотека» отображение м/у сущн. Пользователь и Место_проживания 1 1

ПО «Видеотека» отображение м/у сущн. Просмотренный_фильм и Пользователь М 1

Инфологическое проектирование. ER-диаграммы - student2.ru Инфологическое проектирование. ER-диаграммы - student2.ru Инфологическое проектирование. ER-диаграммы - student2.ru Инфологическое проектирование. ER-диаграммы - student2.ru Инфологическое проектирование. ER-диаграммы - student2.ru Инфологическое проектирование. ER-диаграммы - student2.ru Инфологическое проектирование. ER-диаграммы - student2.ru ПО «Видеотека» отображение м/у сущн. Пользователь и Просмотренный_фильм 1 М

ПО «Отдел кадров» отображение между сущностями Отдел и Сотрудник 1 М

ПО «Деканат» отображение между сущностями Группа и Студент 1 М

ПО «Деканат» отображение между сущностями Номер-зачетки и Номер-паспорта 1 1

ПО «Складской учет» отображение между сущностями Груз_в_отсеке и Отсек М 1

Инфологическое проектирование. ER-диаграммы - student2.ru ПО «Прокат автомобилей» отображение между сущностями «Автомобиль» и «Сведения об автомобилях» имеет вид 1 1.

Степень связи – это количество сущностей, которые охвачены данной связью. Унарная связь (связь со степенью 1, рекурсивная) – это связь сущности с самой собой (сотрудник – начальник, обмен одной недвижимости на другую и т.п.). Бинарная – связь между двумя сущностями (отдел – сотрудник и др.). Тернарная – связь между тремя сущностями (продавец – покупатель – товар) и т.д.

Полное участие в связи – это обязательная связь, неполное участие – не обязательная связь.

Если экземпляр сущности-потомка однозначно определяется своей связью с сущностью-родителем, то связь называется идентифицирующей, в противном случае – не идентифицирующей.

Сущность-потомок в идентифицирующей связи зависит от сущности-родителя.

Сущность-родитель в идентифицирующей связи может быть как независимой, так и зависимой сущностью (это определяется ее связями с другими сущностями).

Связь между двумя сущностями, или сущности самой с собой, может принадлежать к одному из следующих типов:

· идентифицирующая связь;

· не идентифицирующая связь;

· типизирующая связь;

· связь многие-ко-многим;

· рекурсивная связь.

Каждый тип связи определяет поведение атрибутов первичного ключа, когда они мигрируют из родительской сущности в подчиненную.

Рекурсивная связь – это неидентифицирующая связь между двумя сущностями, которая указывает, что экземпляр сущности может быть связан с другим экземпляром той же самой сущности.

– Пример унарной (рекурсивной связи) связи:

Инфологическое проектирование. ER-диаграммы - student2.ru

– Преобразование и оптимизация диаграммы сущность-связь подразумевает:

o устранение множественных атрибутов;

o перепроверка связей 1:1 и, возможно, их устранение;

o дополнение ролевых имен степенями участия;

o устранение связей типа М:М;

o устранение рекурсивных связей.

– Пример схемы:

Инфологическое проектирование. ER-диаграммы - student2.ru

По этой схеме можно утверждать следующее:

1) Каждый день недели входит в расписание один раз.

2) Библиотека работает 5 дней в неделю.

3) Каждый день недели работает от 1-го до 4-х сотрудников.

4) У каждого сотрудника – свои часы работы.

5) Каждый сотрудник работает 1 день.

6) Сущность Сотрудник необязательно участвует в связи Отрабатывает.

7) Сущность День_недели полностью участвует с связи Включает.

8) Сущности Расписание и День_недели связаны 1:М.

9) Сущности Сотрудник и Часы_работы связаны 1:1.

– Пример схемы:

Инфологическое проектирование. ER-диаграммы - student2.ru

По приведенной схеме можно утверждать:

· у каждого лота – один хозяин;

· каждый продавец выставляет на текущие торги не более пяти лотов;

· лот могут купить несколько покупателей.

– Пример схемы:

Инфологическое проектирование. ER-диаграммы - student2.ru

Путь оптимизации для схемы в устранении рекурсивной связи (связи 1:1):

– Пример схемы:

Инфологическое проектирование. ER-диаграммы - student2.ru

Путь оптимизации для схемы в устранении множественного атрибута "№ договора с клиентом".

– Пример схемы:

Инфологическое проектирование. ER-диаграммы - student2.ru

Путь оптимизации для схемы: выведение атрибута «№ договора» из связи.

– Пример схемы:

Инфологическое проектирование. ER-диаграммы - student2.ru

Правильный ответ: устранение связи 1:1, объединение двух сущностей в одну.

– Пример схемы:

Инфологическое проектирование. ER-диаграммы - student2.ru

Правильный ответ: обмен производится один к одному.

Имя роли (ролевое имя)– предназначено для указания назначения участников связи. Ролевые имена (фактически) являются синонимом атрибута внешнего ключа, который показывает, какую роль играет атрибут в дочерней сущности. Ролевое имя обязательно указывать в том случае, если два и более атрибута одной сущности определены на одном и том же домене (Дети(папа, мама) – два внешних ключа, Сотрудники(руководитель) – рекурсивная связь).

– Пример: ролевые имена – руководитель и подчиненный

Инфологическое проектирование. ER-диаграммы - student2.ru

Нормализация – это фактически устранение нежелательных функциональных зависимостей атрибутов.

– Если операция над отношениями имеет цель минимизировать дублирование данных, то производится операция нормализации.

– А и В – атрибуты. Тогда В функционально зависит от А, если для каждого значения А существует ровно одно связанное с ним значение В.

– Если не ключевой атрибут В зависит от всего составного ключа А и не находится в частичной зависимости от его частей, то говорят о полной функциональной зависимостиВ от составного ключа.

– Отношение находится во 2-й нормальной форме, если оно находится в 1-й нормальной форме и каждый не ключевой атрибут функционально полно зависит от первичного ключа.

– 3НФ: отношение находится в 3НФ, если оно находится во 2НФ и каждый неключевой атрибут нетранзитивно зависит от ключа.

– Если для атрибутов А,В,С выполняются условия А–>В и B–>С, но обратная зависимость отсутствует, то говорят, что C зависит от A транзитивно.

– Под оптимизацией схемы понимается разрешение циклов, нестандартных и множественных связей и т.п. Например, для схемы:

Инфологическое проектирование. ER-диаграммы - student2.ru

вариант ответа: устранение множественного атрибута «№ договора с клиентом».

– Вопрос: Реляционная модель ПО «Зоопарк» находится в … нормальной форме.

Инфологическое проектирование. ER-диаграммы - student2.ru

Судя по всему, есть зависимость режима питания от вида животного. Тогда это вторая нормальная форма (2НФ).

Аналогично:

Инфологическое проектирование. ER-диаграммы - student2.ru

Здесь вероятнее, что отношения находятся в 3НФ, при условии, что режим уборки от типа клетки не зависит.

Проектирование

– Последовательность уровней абстракции проектирования БД по мере убывания их зависимости от физического формата хранения: физический, логический, концептуальный.

– Состав атрибутов отношений БД должен удовлетворять двум основным требованиям:

1) между атрибутами не должно быть нежелательных функциональных зависимостей

2) группировка атрибутов должна обеспечивать минимальное дублирование данных.

SQL

– SQL оперирует с данными следующих типов (по стандарту ANSI): численные, символьные.

– Значение NULL для атрибута означает, что данное поле не имеет значения.

– now() – функция, возвращающая текущую дату.

– Year(now()) – функция, возвращающая текущий год.

– Функции агрегирования:

MIN(field) – нахождение минимума значений поля field.

MAX(field) – нахождение максимума значений поля field.

COUNT(*) – подсчет количества строк.

COUNT(field) – подсчет количества значений field is not null.

SUM(field) – подсчет суммы значений поля field.

AVG(field) – подсчет среднего арифметического значения поля field.

COUNT применяется к любым типам полей; MIN и MAX – к числовым, строковым и полям типа "дата"; SUM и AVG – только к числовым полям.

– Запись, которая соответствует запросу "Автор, не получивший премии":

(rÎR)(r.Автор | r.Премии = "")

– Отличие аргумента ALL от * при использовании в функциях агрегирования: он не считает NULL-значения.

– BETWEEN – включает обе границы.

– Предикаты могут содержать операции: +, <, >, || (конкатенация) и др.

– Команда DROP TABLE удаляет таблицу, в том числе, и пустую таблицу.

– Соответствие команд:

DROP TABLE удаляет пустую таблицу

CREATE VIEW создает представления таблицы

CREATE TABLE создает таблицу

ALTER TABLE изменяет таблицу

– Команда ALTER TABLE позволяет:

Добавить новый столбец в таблицу –

ALTER TABLE имя таблицы ADD COLUMN…

Изменить столбец таблицы –

ALTER TABLE имя таблицы ALTER COLUMN …

Удалить столбец из таблицы –

ALTER TABLE имя таблицы DROP COLUMN …

– Запрос, выбирающий все книги от 1996 до 2000 года из таблицы tblBook.

select * from tblBook where Год between 1996 and 2000;

select * from tblBook where Год >= 1996 and Год <= 2000;

select * from tblBook where Год IN (1996, 1997, 1998, 1999, 2000);

– "Запрос SQL по сути является …(указанием СУБД выбрать данные или каким-то образом их организовать)".

– Оператор LIKE используется с полями типа CHAR и VARCHAR для нахождения подстрок.

– Слова, соответствующие шаблону '%c%t_%': enchanter, acritol, cartone.

– Дан запрос SQL (неверный по синтаксису):

insert into r select (Название, КодАвтора, Цена, Кол-во) in “Small Word”, 9, 135, 7

Наиболее вероятный ответ на вопрос "Его целью является …": добавление в таблицу R новой записи.

– Предложение, используемое для указания символа, введение которого будет отменять специальные свойства следующего за ним символа в операторе LIKE – ESCAPE:

select * from sa where name like '$%%' escape '$'; -- строка начинается с %

– Вопрос: "Обобщающее понятие для определений: необходимость указания полностью определенного имени поля (т.е. вместе с именем таблицы), указание условия отношения таблиц – запрос из … таблиц(ы)

· объединенных

· одной таблицы, с подзапросом из другой

· представления, состоящего из нескольких"

Ответ: вариант с подзапросом.

– Вопрос по SQL:

Инфологическое проектирование. ER-диаграммы - student2.ru

Правильный ответ – LEFT.

– Вопрос по SQL:

Инфологическое проектирование. ER-диаграммы - student2.ru

Ответ: right (в смысле, правое внешнее соединение)

– Запрос:

Инфологическое проектирование. ER-диаграммы - student2.ru

– Вопрос:

Инфологическое проектирование. ER-диаграммы - student2.ru

Инфологическое проектирование. ER-диаграммы - student2.ru

Правильный вариант ответа – №4.

– Оператор EXISTS выводит верное значение, если запрос выводит какой-нибудь результат.

– Работа с неопределенными значениями: IS [NOT] NULL.

СУБД

– К качествам СУБД относятся:

гарантия целостности и полноты данных

обеспечение защиты и согласованности данных

– К качествам СУБД относится поддержка:

языков и стандартов ANSI

языковых методов манипулирования данными

логической модели данных

Наши рекомендации