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

Обозначения

–  Обозначение связей (отображений):

–  Обозначение ассоциаций:

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

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

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

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

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

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

Определения

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

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

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

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

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

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

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

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

СМД

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

НЕ нашли? Не то? Что вы ищете?

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

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

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

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

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

ИМД

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

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

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

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

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

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

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

РМД

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

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

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

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

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

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

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

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

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

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

–  Термины:

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

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

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

Примеры:

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

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

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

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

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

– Телефон

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

– Адрес

– ФИО

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

+ Код

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

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

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

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

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

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

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

p - проекция

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

– - разность

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

·  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 Предприятие (ПО «Торговля») сложная ассоциация

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

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

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

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

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

ПО «Торговля» ассоциация м/у сущностями Предприятие и Гендиректор – простая 1

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

ПО «Деканат» ассоциация между сущностями Студент и Дата_защиты – условная С

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Аналогично:

Здесь вероятнее, что отношения находятся в 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:

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

–  Вопрос по SQL:

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

–  Запрос:

–  Вопрос:

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

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

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

СУБД

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

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

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

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

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

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

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