1. Базы данных основные понятия. Введение в базы данных. Определения. 3
Скачать 273.58 Kb.
|
21 Проектирование реляционной базы данных. Упрощение концептуальной модели данных.Концептуальная модель данных состоит из ряда компонентов: сущностей, связей, атрибутов. При переходе к реляционной схеме базы данных каждый из этих компонентов должен быть проанализирован и, если это окажется необходимым, то даже и преобразован. Изменения, вносимые в процессе преобразования, должны быть такими, чтобы их результат полностью отвечал требованиям, выдвигаемым реляционной моделью данных. Таким образом, фаза логического проектирования предполагает следующие действия: 1) Преобразование концептуальной модели данных в логическую модель, в результате которого будет определена схема реляционной модели данных. - Преобразование сущностей и атрибутов - Преобразование бинарных связей - Предварительные отношения для бинарных связей типа 1:1 - Предварительные отношения для бинарных связей типа 1:N - Преобразование связи типа суперкласс/подкласс - Предварительные отношения для бинарных связей типа M:N 2)Проверка модели с помощью концепций последовательной нормализации. Целью применения этой процедуры является получение гарантий того, что каждое из отношений, полученных на основе концептуальной модели, находится, по крайней мере, в НФБК. Если в процессе анализа отношений модели будут найдены отношения не отвечающие требованиям НФБК, то это будет означать, что где-то на предыдущих этапах были допущены ошибки. Возможно, ошибки появились при построении концептуальной модели, а возможно — в процессе ее преобразования в логическую модель. Для обеспечения корректности логической модели в такой ситуации придется вернуться на ранние этапы проектирования и перестроить ошибочно созданные фрагменты модели. 3)Проверка поддержки целостности данных. Следует обратить внимание на следующие вопросы: - возможность для атрибутов иметь пустые значения; - ограничения для доменов атрибутов; - категорная целостность; - ссылочная целостность; - бизнес-правила в данной предметной области 22 Реляционная алгебра. Основные операции реляционной алгебры.Реляционная алгебра состоит из операций над отношениями и их составляющими (атрибутами и кортежами). Результат любой операции реляционной алгебры - новое отношение. Такие системы операций называются замкнутыми. Основные операции разделены на две группы. В первую входят операции, совершаемые над любыми множествами: 1) объединение - операция над двумя отношениями, в результате которой получается новое отношение, состоящее из всех кортежей исходных отношений. Общие для исходных отношений кортежи в новом отношении встречаются только по одному разу. 2) пересечение - операция над двумя отношениями, в результате которой получается новое отношение, состоящее из кортежей, принадлежащих обоим исходным отношениям. 3) разность - операция над двумя отношениями, в результате которой получается новое отношение, состоящее из кортежей, принадлежащих первому отношению и не принадлежащих второму. 4) декартово произведение - операция над двумя отношениями, в результате которой получается новое отношение, состоящее из всех возможных кортежей, являющихся попарными сочетаниями кортежей исходных отношений. Во вторую группу входят операции, применимые только к отношениям: 1) выборка - производится над кортежами одного отношения. Результат выборки - новое отношение, состоящее из котежей исходного отношения, удовлетворяющих заданному условию. 2) проекция - также производится над кортежами одного отношения. Результат проекции - новое отношение, содержащее только заданные атрибуты исходного отношения. 3) соединение - операция над двумя отношениями, имеющими общие атрибуты, в результате которой получается новое отношение, состоящее из всех атрибутов исходных отношений и объединяющее только те кортежи исходных отношений, в которых значения общих атрибутов совпадают. 23. Реляционная алгебра. Дополнительные операции реляционной алгебры.1. Переименование. Операция переименования позволяет изменить имя атрибута отношения и имеет вид: RENAME <исходное отношение> <старое имя атрибута> AS <новое имя атрибута>, 2. Расширения. Операция расширения порождает новое отношение, похожее на исходное, но отличающееся наличием добавленного атрибута, значения которого получаются путем некоторых скалярных вычислений. Операция расширения имеет вид: EXTEND <исходное отношение> ADD <выражение> AS <новый атрибут>, 3. Подведение итогов. Операция подведения итогов SUMMARIZE выполняет вертикальные или групповые вычисления и имеет следующий формат: SUMMARIZE <исх.отн.> BY (<список атрибутов>) ADD <выр.> AS <новый атрибут>, 4. Присвоение. Операция присвоения имеет вид: <выражение_цель>:= <выражение_источник>, Выполнение операции присвоения сводится к замене предыдущего значения отношения на новое. С помощью операции присвоения можно не только полностью заменить все значения отношения_цельи, но и добавить или удалить кортежи. 5. Вставка. Операция вставки имеет вид: INSERT <выражение_источник> INTO <выражение_цель> 6. Обновление. Операция обновления имеет вид: UPDATE <выражение_цель> <список элементов>, где <список элементов> представляет собой последовательность разделенных запятыми операций присвоения <атрибут>:=<скалярное выражение>. Результатом выполнения операции обновления является отношение, полученное после присвоения соответствующих значений атрибутам отношения, заданного целевым выражением. 7. Удаление. Операция удаление имеет вид: DELETE <выражение_цель>, где <выражение_цель> представляет собой реляционное выражение, описывающее удаляемые кортежи. 8. Реляционное сравнение. Операция реляционное сравнение может использоваться для прямого сравнения двух отношений. Она имеет вид: <выражение1> Q <выражение2>, где оба выражения задают совместимые по структуре отношения, а Q – один из следующих операторов сравнения: = (равно), ≠ (не равно), ≤ (собственное подмножество), < (подмножество), ≥ (надмножество), > (собственное надмножество). |