
- •1. Определение информации. Основные проблемы, возникающие при хранении информации.
- •2. Отличительные особенности субд как программного продукта. Понятие экземпляра и базы данных.
- •3. Категории пользователей субд. Функциональные требования различных категорий пользователей к субд.
- •4. История развития субд. Особенности не реляционных моделей данных.
- •5. Общая характеристика моделей данных. Основные свойства. Понятие атрибутов, доменов.
- •6. Отношения модели данных. Понятия сущности и связи.
- •7. Ограничение целостности модели данных. Трехуровневая архитектура ansi/sparc.
- •8. Структурные компоненты модели данных в нотации idef1x. Понятия сущность, связь. Типы сущностей и связей.
- •9. Реляционная модель данных. Базовые структурные компоненты реляционной модели данных. Основные свойства.
- •10. Свойства реляционной модели данных. Представление сущности.
- •11. Свойства реляционной модели данных. Представление связи.
- •12. Требования целостности в реляционной модели данных.
- •13. Язык определения данных в реляционной модели данных. Основные возможности. Примеры.
- •14. Типы ограничений целостности, основные типы данных, основные операции реляционной модели данных.
- •15. Проектирование реляционных баз данных. Цели проектирования, основные этапы.
- •16. Проектирование реляционных баз данных. Проблемы обновления, удаления, добавления данных. Типы ограничений целостности.
- •17. Функциональная зависимость. Нормализация отношений. Концепция нормальных форм.
- •18. Первая и вторая нормальные форма. Определение. Аномалии, возникающие при нарушении. Примеры нарушения и нормализации.
- •19. Третья нормальная форма. Нормальная форма Бойса-Кодда. Определение. Аномалии, возникающие при нарушении. Примеры нарушения и нормализации.
- •20. Понятие многозначной зависимости. Примеры.
- •21. Четвертая и пятая нормальные формы. Определение. Аномалии, возникающие при нарушении. Примеры нарушения и нормализации.
- •22. Основные свойства sql, как языка программирования. Отличие от других языков программирования.
- •23. Основы построения sql- запросов. Источники данных запроса. Условия выборки кортежей. Примеры.
- •24. Левые, правые и полные соединения. Функции для работы с null значениями. Выборка уникальных записей. Примеры.
- •25. Использование подзапросов. Типы подзапросов. Примеры.
- •26. Коррелированные подзапросы. Особенности использования in, not in,exists, not exists.
- •27. Теоретико-множественные операции в sql-запросах. Примеры.
- •28. Агрегирующие функции. Группировка кортежей. Примеры.
- •29. Представления. Особенности использования. Примеры.
- •30. Триггеры в Transact sql. Пример реализации триггера.
- •31. Курсоры. Основные функции. Правила применения. Примеры.
- •32. Внутренние структуры данных. Двухуровневая система доступа к данным. Отношения каталогов.
- •33. Методы доступа к данным. Бинарные деревья.
- •34. Методы доступа к данным. Многоходовые деревья.
- •35. Методы доступа к данным. Сбалансированные деревья. Структура, правила следования. Основные свойства.
- •36. Операция вставки элемента в в-дерево. Проблема переполнения, методы решения. Пример.
- •37. Операция удаления элемента из в-дерева. Проблема антипереполнения. Методы решения. Пример
- •42. Индекс на основе битовых карт. Основные свойства.
- •43. Индекс на основе битовых карт. Структура листового блока. Операция добавления элемента.
- •44. Индекс на основе битовых карт. Операция обновления элемента. Блокировка записей.
- •45. Методы доступа к данным. Основные операции выполнения sql-выражения.
- •46. Методы доступа к данным. Типы соединений таблиц.
9. Реляционная модель данных. Базовые структурные компоненты реляционной модели данных. Основные свойства.
Базовые структурные компоненты реляционной модели данных – это домены и атрибуты, отношения, связи:
1. Домены и атрибуты (столбцы) – свойства, описывающие сущность. Простые: ГОД = {1985, 2003, 2000}, составные: ИСТОРИЯ ЗАРПЛАТЫ = {{<1985, 500>, <2000, 1000>}}
Домен – множество элементов одного типа. Атрибуты задают способ использования домена внутри отношения.
2. Отношения (таблицы) - представление конкретной сущности из предметной области.
Свойства отношения:.
1. Каждый атрибут отношения имеет уникальное в данном отношении имя.
2. Каждый атрибут определен на каком-то одном домене.
3. На одном и том же домене может быть определено несколько атрибутов.
4. Имя атрибута может совпадать с именем домена.
5. Порядок следования атрибутов не устанавливается.
6. В отношении нет совпадающих кортежей (каждый кортеж уникален).
7. Порядок следования кортежей не устанавливается.
8. Отношение имеет имя, которое в схеме базы данных отличается от имен всех других отношений.
Отношение R = { <d1, d2, …, dn> таких, что di Di , i = 1, 2, …, n }
Нормализованное отношение – это отношение, в котором каждое значение атрибутов является атомарным.
Пример: D1 = {a, b, c}, D2 = {1, 2}.
R1 = {<a, 2>, <c, 1>}
d-домены
Схема отношения – это именованная совокупность пар <имя атрибута : имя домена>.
Пример: ОТДЕЛ ( Номер отдела: ЧИСЛО, Название: СТРОКА ).
Представление сущности.
Ключ – это совокупность атрибутов, которая однозначно идентифицирует каждый кортеж данного отношения.
Первичный ключ (PK – Primary Key) – не избыточный набор атрибутов, значения которых однозначно определяют кортеж отношения. Первичный ключ не избыточен, если:
состоит из одного атрибута
состоит из нескольких атрибутов, но ни один из этих атрибутов не является лишним для однозначной идентификации каждого кортежа.
Свойства ключа:
Уникальность - в каждом кортеже значение ключа единственным образом идентифицирует этот кортеж.
Неприводимость – никакое собственное подмножество ключа не обладает свойством уникальности
Отношение может иметь только ОДИН первичный ключ!!!
3. Связи. Связи между сущностями отражают взаимосвязи между конкретными экземплярами сущностей. Эти взаимосвязи представляются с помощью внешних ключей.
Внешний ключ (FK – Foreign Key) – это атрибут или некоторое множество атрибутов отношения R1, которые не являются собственными атрибутами отношения R1, но их значение совпадает со значениями первичного ключа некоторого отношения R2 (возможность идентичности R1 и R2 не исключается).
Основными типами связей между сущностями являются связи 1 : n (“один-ко-многим») и n : n («много-ко-многим»).
1:n.
Каждый сотрудник работает в одном
определённом отделе, в каждом отделе
работают много сотрудников. Эта связь
определяется атрибутом внешнего ключа
в отношении СОТРУДНИК: в это отношение
включается внешний ключ Номер
отдела,
значения которого совпадают со значениями
первичного ключа Номер
отдела
отношения ОТДЕЛ.
n:n.
Каждый поставщик поставляет много
деталей, каждая деталь поставляется
многими поставщиками. В этом случае
связь ПОСТАВКА ( ПОСТАВЩИК, ДЕТАЛЬ )
представляется собственным отношением,
в котором будут атрибуты внешних ключей,
ссылающиеся на отношения ПОСТАВЩИК и
ДЕТАЛЬ. Эти атрибуты могут войти в состав
первичного ключа отношения связи. Кроме
того, отношение связи может иметь
собственный атрибут.