
- •Классификация субд [5]
- •Функции субд
- •Централизованная архитектура
- •Технология с сетью и файловым сервером (архитектура «файл-сервер»)
- •Технология «клиент-сервер»
- •Трехзвенная (трехуровневая) архитектура
- •Реляционная модель данных
- •Методология idef1x
- •Определение отношения, домена, кортежа, реляционной базы данных, ключей
- •Связи между отношениями (таблицами)
- •Базовые теоретико-множественные операции реляционной алгебры
- •Специальные операции реляционной алгебры
- •Аномалии обновления
- •Первая Нормальная Форма
- •Определение функциональной зависимости
- •Функциональные зависимости отношений и математическое понятие функциональной зависимости
- •Вторая Нормальная Форма
- •Определение
- •3Нф (Третья Нормальная Форма)
- •Алгоритм нормализации (приведение к 3нф)
- •Реляционная модель данных: сравнение нормализованных и ненормализованных моделей.
- •16, Сравнение нормализованных и ненормализованных моделей
- •Null-значения
- •Потенциальные ключи
- •Целостность сущностей
- •Внешние ключи
- •Целостность внешних ключей
- •Замечания к правилам целостности сущностей и внешних ключей
- •Операции, которые могут нарушить ссылочную целостность
- •Для родительского отношения
- •Для дочернего отношения
- •20, Целостность реляционных данных: стратегии поддержания ссылочной целостности.
- •Стратегии поддержания ссылочной целостности
- •Операторы ddl (Data Definition Language) - операторы определения объектов базы данных
- •Create table – создать таблицу
- •Оператор check
- •Определение первичных и альтернативных ключей с помощью оператора alter
- •Операторы drop
- •Выборка данных
- •Сортировка результатов
- •Встроенные функции sql
- •Средства модификации данных языка sql
- •Вставка данных – insert
- •Изменение данных – update
- •Удаление данных – delete
- •Выборка данных
- •Представления
- •Применение представлений
- •Обновление представлений
- •Триггеры
- •Хранимые процедуры
- •Большая безопасность и меньший сетевой трафик.
- •Sql можно оптимизировать
- •Совместное использование кода:
- •Структура памяти эвм
- •Представление экземпляра логической записи
- •Организация обмена между оперативной и внешней памятью
- •Структуры хранения данных во внешней памяти эвм
- •Назначение и проверка полномочий, проверка подлинности
- •Средства защиты базы данных
- •Архитектура системы безопасности ms sql Server
- •34.Роли сервера
- •35, Права доступа
- •36, Необходимость в атомарных транзакциях
- •П , Параллельная обработка транзакций
- •Проблема потерянного обновления
- •Блокировка ресурсов
- •Блокировочная терминология
- •Сериализуемые транзакции
- •Взаимная блокировка
- •Оптимистическая и пессимистическая блокировки
- •Объявление характеристик блокировки
- •Свойства транзакций
- •Атомарность
- •Долговечность или устойчивость
- •Согласованность
- •Изолированность транзакции. Уровни изоляции
- •Типы курсоров
Связи между отношениями (таблицами)
Обычно БД представляет собой набор связанных таблиц.
Существует несколько разновидностей связей между отношениями. Связанные отношения часто взаимодействуют по принцип главная и подчиненная таблицы. Главную таблицу можно еще называть родительской, а подчиненную – дочерней. Одна и та же таблица может быть главной по отношению к одной таблице базы данных и дочерней по отношению к другой.
Связь «один-ко-многим» означает, что одной записи в родительской таблице может соответствовать ноль, одна или более записей в дочерней таблице.
В родительской таблице могут быть записи, для которых в данный момент нет соответствующих записей в дочерней таблице.
Различают также жесткую связь «один-ко-многим», когда каждой записи в родительской таблице должна соответствовать хотя бы одна запись в дочерней таблице.
Связь «один-ко-многим» является самой распространенной для реляционных баз данных. Пример связи: таблицы «Студенты» и «Экзамены» могут быть связаны связью «один-ко-многим» по полю «Номер Зачетки». Данная связь будет означать, что одна запись о студенте из таблицы «Студенты» может быть связана с несколькими записями о сдаче экзаменов данным студентом в таблице «Экзамены».
Связь «один-к-одному» имеет место, когда одной записи в родительской таблице соответствует ноль или одна запись в дочерней таблице. Данная связь встречается редко и означает, что информация из двух таблиц могла бы быть объединена в одну. Наличие двух таблиц говорит о желании разделить основную и второстепенную информацию на два отношения. Например, информация о студентах может быть разделена на две таблицы «Студенты» и «Дополнительные сведения», которые будут связаны связью «один-к-одному» по полю «Номер зачетки». Связь «один-к-одному» приводит к тому, что для чтения связанной информации в нескольких таблицах приходится производить несколько операций чтения, что замедляет получение нужной информации. Связь «один-к-одному» может быть жесткой и нежесткой.
Третий вид связи — связь «многие-ко-многим». Данный вид связи означает, что несколько записей одной таблицы связаны с несколькими записями другой таблицы и наоборот. Например: между таблицами «Учебные дисциплины» и «Преподаватели» может существовать связь «многие-ко-многим». Это означает, что каждый преподаватель может вести несколько предметов и, в то же время один и тот же предмет могут вести несколько преподавателей.
Некоторые СУБД не поддерживают связи «многие-ко-многим» на уровне ссылочной целостности, хотя и позволяют реализовывать ее в таблицах неявным образом. Считается, что БД всегда модно перестроить таким образом, чтобы связь типа «многие-ко-многим» была заменена на одну или более связей типа «один-ко-многим».
Ы
11, МАНИПУЛИРОВАНИЕ РЕЛЯЦИОННЫМИ ДАННЫМИ: БАЗОВЫЕ ТЕОРЕТИКО-МНОЖЕСТВЕННЫЕ ОПЕРАЦИИ РЕЛЯЦИОННОЙ АЛГЕБРЫ (ОБЪЕДИНЕНИЕ, РАЗНОСТЬ, ПЕРЕСЕЧЕНИЕ, ПРОИЗВЕДЕНИЕ).
Базовые теоретико-множественные операции реляционной алгебры
Объединением двух совместимых отношений R1 и R2 одинаковой размерности (Rl U R2) является отношение R3, содержащее все элементы исходных отношений, повторяющиеся кортежи при этом исключаются.
В примере отношения R1 и R2 содержат перечни деталей, изготавливаемых соответственно на первом и втором участках цеха. Отношение R3 содержит общий перечень деталей, изготавливаемых в цеху, то есть характеризует общую номенклатуру цеха.
|
|
|
Пересечением двух совместимых отношений R1 и R2 одинаковой размерности (R1 ∩ R2) называется отношение R3, содержащее множество кортежей, принадлежащих одновременно и первому и второму отношениям.
В отношении R4 содержится перечень деталей, которые выпускаются одновременно на двух участках цеха.
R4 |
|
Шифр детали |
Название детали |
003412 |
Гайка Ml |
Разностью двух совместимых называется R1 и R2 одинаковой размерности (R1 \ R2) называется отношение, содержащее множество кортежей, принадлежащих R1 и не принадлежащих R2.
Отношение R5 содержит перечень деталей, изготавливаемых только на участке 1, отношение R6 содержит перечень деталей, изготавливаемых только на участке 2 (R6 =R2 \ R1).
|
|
Следует отметить, что первые две операции, объединение и пересечение являются коммутативными операциями, то есть результат операции не зависит от порядка аргументов в операции. Операция же разности является принципиально несимметричной, то есть результат операции будет различным для разного порядка аргументов, что и видно из сравнения отношений R5 и R6.
Четвертой
теоретико-множественной операцией
является расширенное
декартово произведение.
Эта
операция не накладывает никаких
дополнительных условий на схемы исходных
отношений, поэтому операция расширенного
декартова произведения, обозначаемая
Rl
R2,
допустима для любых двух отношений
Введем дополнительное понятие конкатенации или сцепления кортежей.
Смешением или конкатенацией кортежей c=<c1, c2, …, cn > и q=<q1, q2, …, qm> называется кортеж, полученный добавлением значений второго кортежа в конец первого. Сцепление кортежей с и q обозначается (c,q):
(c, q) =<c1, c2, …, cn, q1, q2, …, qm >.
Все предыдущие операции не меняли степени или арности отношений, это следовало из эквивалентности схем отношений. Операция декартова произведения меняет степень результирующего отношения.
Расширенным декартовым произведением отношения R1 степени n со схемой SR1 = (А1, А2, ..., Аn) и отношения R2 степени m со схемой SR2 = (В1, В2, ... Вm) называется отношение R3 степени n+m со схемой
SR3 = (А1, А2, ..., Аn, В1, В2, ... Вm),
содержащее кортежи, полученные сцеплением каждого кортежа a отношения R1 с каждым кортежем b отношения R2.
Операцию декартова произведения с учетом возможности перестановки атрибутов в отношении можно считать симметричной. Очень часто операция расширенного декартова произведения используется для получения отношения, которое характеризует все возможные комбинации между элементами отдельных множеств. Однако самостоятельного значения результат выполнения операции обычно не имеет, он участвует в дальнейшей обработке.
В примере в отношении R7 задана обязательная номенклатура деталей для всех цехов, в отношении R8 дан перечень всех цехов. Тогда результирующее отношение R9 соответствует ситуации, когда каждый цех изготавливает все требуемые детали.
|
|
|
МАНИПУЛИРОВАНИЕ РЕЛЯЦИОННЫМИ ДАННЫМИ: СПЕЦИАЛЬНЫЕ ОПЕРАЦИИ РЕЛЯЦИОННОЙ АЛГЕБРЫ (СЕЛЕКЦИЯ, ПРОЕКЦИЯ, СОЕДИНЕНИЕ).