Раздел 3.  Реляционные модели данных Начать показ Завершить показ
Реляционные модели   Начать показ слайдов на тему: Реляционная алгебра. Языки запросов
Определение реляционной модели  Реляционная модель данных  (РМД) некоторой предметной области представляет собой набор отношений, изменяющихся во времени. При создании информационной системы совокупность отношений позволяет хранить данные об объектах предметной области и моделировать связи между ними.  Элементы реляционной модели Содержание Тип значений элементов таблицы Тип данных Один или несколько атрибутов Первичный ключ Значение поля в записи Значение атрибута Множество допустимых значений атрибута Домен Заголовок столбца таблицы Атрибут Описание свойств объекта Сущность Строка таблицы Кортеж Строка заголовков столбцов таблицы (заголовок таблицы) Схема отношения Таблица Отношение Форма представления Элементы реляционной модели
Отношение  представляет собой двумерную таблицу, содержащую некоторые данные. Сущность  есть объект любой природы, данные о котором хранятся в БД. Данные о сущности хранятся в отношении. Атрибуты  представляют собой свойства, характеризующие сущность. В структуре таблицы каждый атрибут именуется и ему соответствует заголовок некоторого столбца таблицы. Содержание
Домен  представляет собой множество всех возможных значений определенного атрибута отношения. Отношение СОТРУДНИК содержит 3 кортежа. Кортеж рассматриваемого отношения состоит из 4 элементов, каждый из которых выбирается из соответствующего домена. Каждому кортежу соответствует строка таблицы. Отношение СОТРУДНИК включает 4 домена.  Домен 1  содержит фамилии всех сотрудников,  домен 2  – номера всех отделов фирмы,  домен 3  – названия всех должностей,  домен 4  – даты рождения всех сотрудников. Каждый домен образует значения одного типа данных. Схема отношения (заголовок отношения)   представляет собой список имен атрибутов (СОТРУДНИК(ФИО, Отдел, Должность, Д_рождения)).  Первичным ключом (ключом отношения, ключевым атрибутом)   называется атрибут отношения, однозначно идентифицирующий каждый из его кортежей (в отношении СОТРУДНИК(ФИО, Отдел, Должность, Д_рождения) ключевым является атрибут «ФИО».  Ключ  может быть   составным (сложным),   то есть состоять из нескольких атрибутов). Содержание
Индексирование   Под  индексом  понимают средство ускорения операции поиска записей в таблице, а следовательно, и других операций, использующих поиск: извлечение, модификация, сортировка и т.д.  таблицу, для которой используется индекс, называют индексированной. Индекс выполняет роль  оглавления   таблицы, просмотр которого предшествует обращению к записям таблицы. Для организации  ссылки  на запись таблицы могут использоваться три типа адресов: абсолютный, относительный и символический. Организация индексирования таблиц осуществляется двумя способами: Одноуровневой Многоуровневой. Содержание
Одноуровневая схема   При  одноуровневой схеме  в индексном файле хранятся короткие записи, имеющие два поля: поле содержимого старшего ключа адресуемого блока и поле адреса начала этого блока: На каждом блоке записи располагаются в порядке возрастания значения ключа или свертки. Старшим ключом каждого блока является ключ его последней записи. Недостатки:   ключи хранятся вместе с записями. Содержание
Двухуровневая схема   Двухуровневая схема  в ряде случаев оказывается более рациональной, в ней ключи записей отделены от содержимого записей: В этой схеме индекс основной таблицы распределен по совокупности файлов: одному файлу главного индекса и множеству файлов с блоками ключей. Индексные файлы, создаваемые по ключевым полям таблицы, называются  файлами первичных индексов. Индексы, создаваемые пользователем для не ключевых полей, называются  вторичными индексами . Содержание
Связывание таблиц   При проектировании реальных БД информацию размещают в нескольких таблицах. Таблицы при этом связаны семантикой информации. В реляционных СУБД для указания связей таблиц производят операцию их  связывания . Достоинство связывания:  повышает производительность хранимой в БД информации, облегчает доступ к данным. Основные виды связи таблиц Между таблицами могут устанавливаться: Бинарные; Тернарные; n -арные связи. Содержание
Основные виды связи таблиц Между таблицами могут устанавливаться: Бинарные; Тернарные; n -арные связи. При связывании двух таблиц выделяют основную и дополнительную таблицы. Логическое связывание таблиц производится с помощью  ключа связи. В зависимости от того, как определены поля связи основной и дополнительной таблиц между двумя таблицами могут устанавливаться следующие основные вида связи: один – один (1 : 1); один – много (1 : М); много – один (М : 1); много – много (М : М). Содержание
Связь вида 1 : 1 Связь 1 : 1 образуется в случае, когда все поля связи основной и дополнительной таблиц являются ключевыми. Поскольку значения в ключевых полях обеих таблиц не повторяются, обеспечивается взаимно-однозначное соответствие записей этих полей. Сами таблицы становятся равноправными. Таблица О1 Таблица Д1  *  +   *  + Пусть имеется основная О1 и дополнительная Д1 таблицы. Ключевые поля обозначим символом «*», используемые для связи поля обозначим символом «+». Содержание 3 В книга В 40 Б стол А 10 А Поле22 Поле 21 Поле12 Поле 11
Связь вида 1 : М Связь вида 1 : М имеет место в случае, когда одной записи основной таблицы соответствует несколько записей вспомогательной таблицы. Пусть имеются  две связанные таблицы О2 и Д2. в таблице О2 содержится информация о видах мультимедиа-устройств ПЭВМ, а в таблице Д2 – информация о фирмах-производителях этих устройств, а также о наличие хотя бы одного устройства. Таблица О2   Таблица Д2 *  +     *  +   * Таблица Д2 имеет два ключевых поля, так как одна и та же фирма может производить устройства различных видов.  Содержание Да Нет Да Да Да Нет Нет Да Да Creative Labs В Yamaha Б Sony Б Philips Б Sony А Panasonic А NEC А Sound Blaster В Mitsumi А CD - Recorder Б Acer А CD - ROM А Наличие Фирма-производитель Код Вид устройства Код
Связь вида М : 1 Связь вида М : 1 имеет место в случае, когда одной или нескольким записям основной таблицы ставится в соответствие одна запись дополнительной таблицы.  В основной таблице О3 содержится информация о названиях деталей (Поле11), видах материалов, из которого детали можно изготовить (Поле12), и марках материала (Поле13). В дополнительной таблице Д3 содержаться сведения о названиях деталей (Поле21), планируемых сроках изготовления (Поле22) и стоимость заказов (Поле23). Таблица О3   Таблица Д3 +   *  + Связывание этих таблиц обеспечивает такое установление соответствия между записями, которое эквивалентно образованию  псевдозаписей.  Содержание марка2 чугун деталь4 - алюминий деталь3 марка3 сталь деталь2 240 6.05.05 деталь4 марка2 сталь деталь2 90 17.02.05 деталь3 марка1 сталь деталь2 35 3.01.05 деталь2 марка2 чугун деталь1 90 4.03.05 деталь1 марка1 чугун деталь1 Поле23 Поле22 Поле21 Поле13 Поле12 Поле11
Связь вида М : М Связь вида М : М возникает в случае, когда нескольким записям основной таблицы соответствует несколько записей дополнительной таблицы. Пусть в основной таблице О4 содержится информация о том, на каких станках могут работать рабочие некоторой бригады. Таблица Д4 содержит сведения о том, кто из бригады ремонтников какие станки обслуживает. Таблица О4     Таблица Д4 *    *  +   *  *  + Исходя из определения полей связи этих таблиц можно составить новую таблицу с именем «О4+Д4»: Содержание станок2 Сидоров В.К. станок3 Зыков А.Ф. станок3 Петров Н.Г. станок2 Зыков А.Ф. станок1 Петров Н.Г. станок3 Голубев Б.С. станок2 Иванов А.В. станок1 Голубев Б.С. станок1 Иванов А.В. Станок Обслуживает На станке Работает Зыков А.Ф. станок2 Сидоров В.К. Зыков А.Ф. станок3 Петров Н.Г. Голубев Б.С. станок3 Петров Н.Г. Голубев Б.С. станок1 Петров Н.Г. Зыков А.Ф. станок2 Иванов А.В. Голубев Б.С. станок1 Иванов А.В. Обслуживание Станок Работа
Контроль целостностей связей   Контроль целостностей связей обычно означает анализ содержимого двух таблиц на соблюдение следующих правил: каждой записи основной таблицы соответствует нуль или более записей дополнительной таблицы; в дополнительной таблице нет записей, которые не имеют родительских записей в основной таблице; каждая запись дополнительной таблицы имеет только одну родительскую запись основной таблицы. Содержание След. тема
Теоретические языки запросов   В реляционных СУБД для выполнения операций над отношениями используются две группы языков, имеющие в качестве своей математической основы теоретические языки запросов: реляционная алгебра; реляционное исчисление. В  реляционной алгебре   операнды и результаты всех действий являются отношениями. Языки реляционной алгебры являются  процедурными , так как отношение, являющееся результатом запроса к реляционной БД, вычисляются при выполнении последовательности реляционных операторов, применяемых к отношениям. Языки  исчислений  являются  непроцедурными  и позволяют выражать запросы с помощью предиката первого порядка, которому должны удовлетворять кортежи или домены отношений. Содержание
Реляционная алгебра   Реляционная алгебра   как теоретический язык запросов по сравнению с реляционным исчислением более наглядно описывает выполняемые над отношениями действий. Реляционная алгебра, включает в себя следующие  основные операции : Объединение; Разность; Пересечение; Произведение; Выборка; Проекция; Деление; Соединение. Содержание
Реляционное исчисление Принципиальное различие между реляционной алгеброй и реляционным исчислением состоит в том, что в первом случае процесс получения искомого результата описывается явным образом путем указания набора операций, которые надо выполнить для получения результата, а во втором — указываются свойства искомого отношения без конкретизации процедуры его получения. Существует два варианта исчислений: исчисление кортежей  и  исчисление доменов.   В первом случае для описания отношений используются переменные, допустимыми значениями которых являются кортежи отношения, а во втором случае — элементы домена. Реляционное исчисление, основанное на кортежах  (исчисление кортежей). Содержание
Язык запросов по образцу  QBE Запрос  представляет собой специальным образом описанное требование, определяющее состав производимых над БД операций по выборке, удалению или модификации хранимых данных. Для подготовки запросов с помощью различных СУБД чаще всего используются два основных языка описания запросов: язык  QBE  ( Query By Example ) – язык запросов по образцу; SQL  ( Structured Query Language)  – язык запросов по образцу. Хранимые в базе данные можно обрабатывать в ручную, последовательно просматривая и редактируя данные в таблицах с помощью имеющихся в СУБД собственных средств. Для повышения эффективности применяют запросы, позволяющие производить  множественную  обработку данных, то есть одновременно вводить, редактировать и удалять множество записей, а также выбирать данные из таблиц. Содержание
Характеристика языка  QBE На языке  QBE  можно задавать запросы  однотабличные  и  многотабличные .  С помощью запросов на языке  QBE  можно выполнять следующие основные операции: выборку данных; вычисление над данными; вставку новых записей; удаление записей; модификацию данных. Выборка, вставка, удаление и модификация могут производиться безусловно или в соответствии с условиями, задаваемыми с помощью логических выражений. Вычисления над данными задаются с помощью арифметических выражений и порождают в ответных таблицах новые поля, называемые  вычисляемыми . Содержание
Выборка данных Простая выборка.  Примером простой выборки является запрос : «Вывести все возможные цвета товаров из таблицы ТИПЫ ТОВАРОВ». Простая выборка с упорядочиванием.  Для упорядочивания выводимых значений по возрастанию или по убыванию используются конструкции «АО.» и « DO .» соответственно. Если требуется упорядочить по нескольким столбцам, применяют конструкцию  «АО(1)» и «А O (2)». Выборка с квалификаторами (условиями).  Выбор записей из исходной таблицы в общем случае может быть основан на точном совпадении, частичном совпадении, сравнении. Точное совпадение   задается вводом констант в соответствующих полях шаблона. Частичное совпадение   задается с помощью элементов примера. Условие сравнения   записывается с помощью операций сравнения: = (равно); > (больше); < (меньше); <> (не равно); >= (больше или равно); <= (меньше или равно). Содержание зеленый Р. ХХ СТОИМОСТЬ ЦВЕТ ТОВАР ТИПЫ ТОВАРОВ

раздел 3 реляционные модели данных

  • 1.
    Раздел 3. Реляционные модели данных Начать показ Завершить показ
  • 2.
    Реляционные модели Начать показ слайдов на тему: Реляционная алгебра. Языки запросов
  • 3.
    Определение реляционной модели Реляционная модель данных (РМД) некоторой предметной области представляет собой набор отношений, изменяющихся во времени. При создании информационной системы совокупность отношений позволяет хранить данные об объектах предметной области и моделировать связи между ними. Элементы реляционной модели Содержание Тип значений элементов таблицы Тип данных Один или несколько атрибутов Первичный ключ Значение поля в записи Значение атрибута Множество допустимых значений атрибута Домен Заголовок столбца таблицы Атрибут Описание свойств объекта Сущность Строка таблицы Кортеж Строка заголовков столбцов таблицы (заголовок таблицы) Схема отношения Таблица Отношение Форма представления Элементы реляционной модели
  • 4.
    Отношение представляетсобой двумерную таблицу, содержащую некоторые данные. Сущность есть объект любой природы, данные о котором хранятся в БД. Данные о сущности хранятся в отношении. Атрибуты представляют собой свойства, характеризующие сущность. В структуре таблицы каждый атрибут именуется и ему соответствует заголовок некоторого столбца таблицы. Содержание
  • 5.
    Домен представляетсобой множество всех возможных значений определенного атрибута отношения. Отношение СОТРУДНИК содержит 3 кортежа. Кортеж рассматриваемого отношения состоит из 4 элементов, каждый из которых выбирается из соответствующего домена. Каждому кортежу соответствует строка таблицы. Отношение СОТРУДНИК включает 4 домена. Домен 1 содержит фамилии всех сотрудников, домен 2 – номера всех отделов фирмы, домен 3 – названия всех должностей, домен 4 – даты рождения всех сотрудников. Каждый домен образует значения одного типа данных. Схема отношения (заголовок отношения) представляет собой список имен атрибутов (СОТРУДНИК(ФИО, Отдел, Должность, Д_рождения)). Первичным ключом (ключом отношения, ключевым атрибутом) называется атрибут отношения, однозначно идентифицирующий каждый из его кортежей (в отношении СОТРУДНИК(ФИО, Отдел, Должность, Д_рождения) ключевым является атрибут «ФИО». Ключ может быть составным (сложным), то есть состоять из нескольких атрибутов). Содержание
  • 6.
    Индексирование Под индексом понимают средство ускорения операции поиска записей в таблице, а следовательно, и других операций, использующих поиск: извлечение, модификация, сортировка и т.д. таблицу, для которой используется индекс, называют индексированной. Индекс выполняет роль оглавления таблицы, просмотр которого предшествует обращению к записям таблицы. Для организации ссылки на запись таблицы могут использоваться три типа адресов: абсолютный, относительный и символический. Организация индексирования таблиц осуществляется двумя способами: Одноуровневой Многоуровневой. Содержание
  • 7.
    Одноуровневая схема При одноуровневой схеме в индексном файле хранятся короткие записи, имеющие два поля: поле содержимого старшего ключа адресуемого блока и поле адреса начала этого блока: На каждом блоке записи располагаются в порядке возрастания значения ключа или свертки. Старшим ключом каждого блока является ключ его последней записи. Недостатки: ключи хранятся вместе с записями. Содержание
  • 8.
    Двухуровневая схема Двухуровневая схема в ряде случаев оказывается более рациональной, в ней ключи записей отделены от содержимого записей: В этой схеме индекс основной таблицы распределен по совокупности файлов: одному файлу главного индекса и множеству файлов с блоками ключей. Индексные файлы, создаваемые по ключевым полям таблицы, называются файлами первичных индексов. Индексы, создаваемые пользователем для не ключевых полей, называются вторичными индексами . Содержание
  • 9.
    Связывание таблиц При проектировании реальных БД информацию размещают в нескольких таблицах. Таблицы при этом связаны семантикой информации. В реляционных СУБД для указания связей таблиц производят операцию их связывания . Достоинство связывания: повышает производительность хранимой в БД информации, облегчает доступ к данным. Основные виды связи таблиц Между таблицами могут устанавливаться: Бинарные; Тернарные; n -арные связи. Содержание
  • 10.
    Основные виды связитаблиц Между таблицами могут устанавливаться: Бинарные; Тернарные; n -арные связи. При связывании двух таблиц выделяют основную и дополнительную таблицы. Логическое связывание таблиц производится с помощью ключа связи. В зависимости от того, как определены поля связи основной и дополнительной таблиц между двумя таблицами могут устанавливаться следующие основные вида связи: один – один (1 : 1); один – много (1 : М); много – один (М : 1); много – много (М : М). Содержание
  • 11.
    Связь вида 1: 1 Связь 1 : 1 образуется в случае, когда все поля связи основной и дополнительной таблиц являются ключевыми. Поскольку значения в ключевых полях обеих таблиц не повторяются, обеспечивается взаимно-однозначное соответствие записей этих полей. Сами таблицы становятся равноправными. Таблица О1 Таблица Д1 * + * + Пусть имеется основная О1 и дополнительная Д1 таблицы. Ключевые поля обозначим символом «*», используемые для связи поля обозначим символом «+». Содержание 3 В книга В 40 Б стол А 10 А Поле22 Поле 21 Поле12 Поле 11
  • 12.
    Связь вида 1: М Связь вида 1 : М имеет место в случае, когда одной записи основной таблицы соответствует несколько записей вспомогательной таблицы. Пусть имеются две связанные таблицы О2 и Д2. в таблице О2 содержится информация о видах мультимедиа-устройств ПЭВМ, а в таблице Д2 – информация о фирмах-производителях этих устройств, а также о наличие хотя бы одного устройства. Таблица О2 Таблица Д2 * + * + * Таблица Д2 имеет два ключевых поля, так как одна и та же фирма может производить устройства различных видов. Содержание Да Нет Да Да Да Нет Нет Да Да Creative Labs В Yamaha Б Sony Б Philips Б Sony А Panasonic А NEC А Sound Blaster В Mitsumi А CD - Recorder Б Acer А CD - ROM А Наличие Фирма-производитель Код Вид устройства Код
  • 13.
    Связь вида М: 1 Связь вида М : 1 имеет место в случае, когда одной или нескольким записям основной таблицы ставится в соответствие одна запись дополнительной таблицы. В основной таблице О3 содержится информация о названиях деталей (Поле11), видах материалов, из которого детали можно изготовить (Поле12), и марках материала (Поле13). В дополнительной таблице Д3 содержаться сведения о названиях деталей (Поле21), планируемых сроках изготовления (Поле22) и стоимость заказов (Поле23). Таблица О3 Таблица Д3 + * + Связывание этих таблиц обеспечивает такое установление соответствия между записями, которое эквивалентно образованию псевдозаписей. Содержание марка2 чугун деталь4 - алюминий деталь3 марка3 сталь деталь2 240 6.05.05 деталь4 марка2 сталь деталь2 90 17.02.05 деталь3 марка1 сталь деталь2 35 3.01.05 деталь2 марка2 чугун деталь1 90 4.03.05 деталь1 марка1 чугун деталь1 Поле23 Поле22 Поле21 Поле13 Поле12 Поле11
  • 14.
    Связь вида М: М Связь вида М : М возникает в случае, когда нескольким записям основной таблицы соответствует несколько записей дополнительной таблицы. Пусть в основной таблице О4 содержится информация о том, на каких станках могут работать рабочие некоторой бригады. Таблица Д4 содержит сведения о том, кто из бригады ремонтников какие станки обслуживает. Таблица О4 Таблица Д4 * * + * * + Исходя из определения полей связи этих таблиц можно составить новую таблицу с именем «О4+Д4»: Содержание станок2 Сидоров В.К. станок3 Зыков А.Ф. станок3 Петров Н.Г. станок2 Зыков А.Ф. станок1 Петров Н.Г. станок3 Голубев Б.С. станок2 Иванов А.В. станок1 Голубев Б.С. станок1 Иванов А.В. Станок Обслуживает На станке Работает Зыков А.Ф. станок2 Сидоров В.К. Зыков А.Ф. станок3 Петров Н.Г. Голубев Б.С. станок3 Петров Н.Г. Голубев Б.С. станок1 Петров Н.Г. Зыков А.Ф. станок2 Иванов А.В. Голубев Б.С. станок1 Иванов А.В. Обслуживание Станок Работа
  • 15.
    Контроль целостностей связей Контроль целостностей связей обычно означает анализ содержимого двух таблиц на соблюдение следующих правил: каждой записи основной таблицы соответствует нуль или более записей дополнительной таблицы; в дополнительной таблице нет записей, которые не имеют родительских записей в основной таблице; каждая запись дополнительной таблицы имеет только одну родительскую запись основной таблицы. Содержание След. тема
  • 16.
    Теоретические языки запросов В реляционных СУБД для выполнения операций над отношениями используются две группы языков, имеющие в качестве своей математической основы теоретические языки запросов: реляционная алгебра; реляционное исчисление. В реляционной алгебре операнды и результаты всех действий являются отношениями. Языки реляционной алгебры являются процедурными , так как отношение, являющееся результатом запроса к реляционной БД, вычисляются при выполнении последовательности реляционных операторов, применяемых к отношениям. Языки исчислений являются непроцедурными и позволяют выражать запросы с помощью предиката первого порядка, которому должны удовлетворять кортежи или домены отношений. Содержание
  • 17.
    Реляционная алгебра Реляционная алгебра как теоретический язык запросов по сравнению с реляционным исчислением более наглядно описывает выполняемые над отношениями действий. Реляционная алгебра, включает в себя следующие основные операции : Объединение; Разность; Пересечение; Произведение; Выборка; Проекция; Деление; Соединение. Содержание
  • 18.
    Реляционное исчисление Принципиальноеразличие между реляционной алгеброй и реляционным исчислением состоит в том, что в первом случае процесс получения искомого результата описывается явным образом путем указания набора операций, которые надо выполнить для получения результата, а во втором — указываются свойства искомого отношения без конкретизации процедуры его получения. Существует два варианта исчислений: исчисление кортежей и исчисление доменов. В первом случае для описания отношений используются переменные, допустимыми значениями которых являются кортежи отношения, а во втором случае — элементы домена. Реляционное исчисление, основанное на кортежах (исчисление кортежей). Содержание
  • 19.
    Язык запросов пообразцу QBE Запрос представляет собой специальным образом описанное требование, определяющее состав производимых над БД операций по выборке, удалению или модификации хранимых данных. Для подготовки запросов с помощью различных СУБД чаще всего используются два основных языка описания запросов: язык QBE ( Query By Example ) – язык запросов по образцу; SQL ( Structured Query Language) – язык запросов по образцу. Хранимые в базе данные можно обрабатывать в ручную, последовательно просматривая и редактируя данные в таблицах с помощью имеющихся в СУБД собственных средств. Для повышения эффективности применяют запросы, позволяющие производить множественную обработку данных, то есть одновременно вводить, редактировать и удалять множество записей, а также выбирать данные из таблиц. Содержание
  • 20.
    Характеристика языка QBE На языке QBE можно задавать запросы однотабличные и многотабличные . С помощью запросов на языке QBE можно выполнять следующие основные операции: выборку данных; вычисление над данными; вставку новых записей; удаление записей; модификацию данных. Выборка, вставка, удаление и модификация могут производиться безусловно или в соответствии с условиями, задаваемыми с помощью логических выражений. Вычисления над данными задаются с помощью арифметических выражений и порождают в ответных таблицах новые поля, называемые вычисляемыми . Содержание
  • 21.
    Выборка данных Простаявыборка. Примером простой выборки является запрос : «Вывести все возможные цвета товаров из таблицы ТИПЫ ТОВАРОВ». Простая выборка с упорядочиванием. Для упорядочивания выводимых значений по возрастанию или по убыванию используются конструкции «АО.» и « DO .» соответственно. Если требуется упорядочить по нескольким столбцам, применяют конструкцию «АО(1)» и «А O (2)». Выборка с квалификаторами (условиями). Выбор записей из исходной таблицы в общем случае может быть основан на точном совпадении, частичном совпадении, сравнении. Точное совпадение задается вводом констант в соответствующих полях шаблона. Частичное совпадение задается с помощью элементов примера. Условие сравнения записывается с помощью операций сравнения: = (равно); > (больше); < (меньше); <> (не равно); >= (больше или равно); <= (меньше или равно). Содержание зеленый Р. ХХ СТОИМОСТЬ ЦВЕТ ТОВАР ТИПЫ ТОВАРОВ