Как правило, системы баз данных оснащены языком запросов, которые могут помочь его пользователям запрашивать экземпляры. Существует два таких типа - реляционная алгебра и реляционное исчисление. Первый является процедурным который принимает экземпляры отношений как входные данные и выводит примеры отношений как выходные. Использует для этого унарные или двоичные исчисления. Реляционная алгебра выполняется рекурсивно, а рассматриваются как отношения.

Декартово произведение (Χ)

Объединяет информацию двух разных отношений в одну.

Обозначения - r Χ s,

где r и s - отношения, а их выход будет определяться как

r Χ s = {qt | q ∈ r и t ∈ s}.

Вывод. Устанавливает отношение, которое показывает все книги и статьи, написанные с помощью учебника.

Переименовать операцию (ρ).

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

Обозначение - ρ x (E),

где результат выражения E сохраняется с именем x.

Дополнительные операции:

  • установить пересечение;
  • присваивание;
  • естественное соединение.

Реляционное исчисление

Является непроцедурным язык запросов, то есть он говорит, что делать, но не объясняет, как это реализовать. Реляционное исчисление существует в двух формах:

  • корреляционное исчисление кортежа;
  • фильтрация переменных диапазонов.

Обозначения - T/Состояние: возвращает все кортежи T, удовлетворяющие условию. Результат. Возвращает кортежи с именем. TRC можно количественно определить. Можно использовать экзистенциальные (∃) и универсальные кванторы (∀). Вывод. Вышеприведенный запрос даст тот же результат, что и предыдущий.

Доменное реляционное исчисление DRC

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

Обозначения - {a 1 , a 2 , a 3 , ..., a n | P (a 1 , a 2 , a 3 , ..., a n)},

где a1, a2 - атрибуты, а P обозначает формулы, построенные внутренними значениями.

Вывод. Устанавливает статью, страницу и тему из отношения TutorialsPoint, где subject является базой данных.

Подобно TRC, DRC также может быть записана с использованием экзистенциальных и универсальных кванторов. ДРК также включает операторов реляционной алгебры. Сила выражения вычисления, исчисления и корреляции отношений между точками эквивалентна.

Вариации и схемы реляционного исчисления и алгебры

Модель ER, когда она концептуализирована на диаграммах, дает хороший обзор сущностных отношений, которые легче понять. Схематические изображения могут быть сопоставлены с реляционной схемой, т. е. их можно создать совместно друг с другом. Невозможно импортировать все ограничения ER в реляционную модель, но может быть сгенерирована приблизительная структура. Существует несколько процессов и алгоритмов, доступных для преобразования диаграмм в эту систему. Некоторые из них автоматизированы, а другие создаются вручную. Диаграммы ER в основном состоят из следующих критериев:

  • сущности и ее атрибутов;
  • связи, которая является ассоциацией между вышеупомянутыми значениями.

Сопоставление объектов и отношений происходят разными путями и схемами. К примеру, сущность - это объект реального мира с некоторыми атрибутами. Процесс сопоставления, алгоритм следующий:

  • создать таблицу для каждого объекта;
  • атрибуты должны стать полями таблиц с соответствующими типами данных;
  • объявить первичный ключ.

Отношение - это ассоциация между сущностями. Процесс составления следующий:

  • создать таблицу для отношений;
  • добавить первичные ключи всех участвующих сущностей в качестве полей таблицы с соответствующими типами данных;
  • если отношение имеет какой-либо атрибут, установить каждый атрибут в качестве поля таблицы;
  • объединить первичный ключ, составляющий все остальные для участвующих объектов;
  • указать все ограничения внешнего ключа.

Отображение слабых наборов и иерархических объектов происходит по определенной системе. Прежде всего, необходимо понимать сущностные основы и значений. Слабый набор объектов - это тот, который не имеет никакого первичного ключа, связанного с ним. Процесс отображения следующий:

  • создать таблицу для слабого набора объектов;
  • добавить все атрибуты в схему как поле;
  • указать первичный ключ для идентификации;
  • установить все ограничения внешнего ключа.

Отображение иерархических объектов основано на специализации или обобщении языка реляционной алгебры происходит в виде последовательных сущностей. Алгоритм следующий:

  • создать таблицы для всех объектов более высокого нижнего уровня;
  • добавить первичные ключи;
  • на низком уровне реализовать все другие атрибуты объектов нижнего уровня;
  • объявить первичные ключи таблицы;
  • установить ограничения внешнего ключа.

Существующие варианты для описания, хранения, изменения информации

SQL - это язык программирования для реляционных баз данных. Он разработан над алгеброй и корреляционным исчислением кортежей. SQL поставляется в виде пакета со всеми основными дистрибутивами СУБД. Содержит как данные, так и языки манипулирования ими. Используя свойства определения данных SQL реляционной алгебры, можно спроектировать и изменить схему базы, тогда как свойства управления и корректировки, а также изменения данных позволяют хранить и извлекать установленную в систему информацию. Использует следующий набор команд для определения структуры и системы:

  • создает новые таблицы и представления из СУБД.
  • выбрасывает команды.
  • изменяет схему базы данных.
  • эта команда добавляет атрибут в объект типа string.

SQL оснащен языком манипулирования данными (DML). Он изменяет экземпляр базы, вставляя, обновляя и удаляя информацию. DML отвечает за изменение всех данных. SQL содержит следующий набор команд в разделе DML:

  1. SELECT - это одна из основных команд запроса. Он аналогичен проекционной операции реляционной алгебры. Он выбирает атрибуты на основе условия, описанного в приложении WHERE.
  2. FROM - этот раздел принимает имя в качестве аргумента, из которого атрибуты должны быть выбраны/спроецированы. В случае если дано более одного названия, этот пункт соответствует декартовому произведению.
  3. WHERE - этот раздел определяет предикат или условия, которые должны соответствовать, чтобы квалифицировать проецирующийся атрибут.

Существуют также команды:

  • вставка;
  • изменение значений;
  • удаление.

Создание запросов реляционной алгебры

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

Для большинства операторов порядок запросов и их выполнения не имеет значения, а это означает, что один и тот же вывод может быть достигнут путем формирования и комбинирования промежуточных данных по-разному. На практике поиски в базе довольно легки. Система выполнения операций и промежуточных результатов определяется оптимизатором запросов. При формировании вопросов, требований нужно
сначала выбрать, какие отношения необходимы для достижения ответа, а затем указать операции и промежуточные результаты. Структура запроса реляционной алгебры в базе данных с результатами может быть представлена ​​в виде диаграммы. Оптимизаторы требований пытаются организовать максимально эффективное выполнение. На практике это обычно означает, что они стараются как можно быстрее минимизировать промежуточные результаты. В этом помогут распространенные примеры реляционной алгебры.

Информация об автомобилях модели 1996 года, где в ходе инспекции на 1999 год обнаружены недостатки.

Сначала выводится информация о машинах, чтобы понимать значения всех атрибутов отношения. Информация об инспекциях хранится в таблице «Проверка», и, если обнаружены неисправности, они регистрируются в таблице «Проблема». Таким образом, нужны эти три таблицы, чтобы получить нужную информацию.

Интересны только автомобили 1996 года. Модельный ряд автомобиля представлен как значение установленного атрибута в строке таблицы информации о машине. Первый промежуточный результат состоит из кортежей, представляющих варианты 1996 года.

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

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

Варианты исчислений без промежуточных результатов

Необходимая информация: Имя водителя для модельного года 1995 года или более старые автомобили, которые не были проверены на 2000 год. Имя находится в таблице "Водитель". Правоохранительные органы описаны в таблице «Инспекция и автомобили в столовой машине». Таким образом, нужны эти три таблицы. Во-первых, необходимо узнать автомобили, которые не были осмотрены на 2000 год. Невозможно решить эту проблему, используя только инспекцию, указанную в таблице, поскольку она содержит данные об этих проверках, которые были сделаны, а не о тех, что не были реализованы. Эта проблема решается путем поиска дополняющих автомобилей, которые проверяются до 2000 года. На самом деле нужны только их регистрационные номера.

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

Где закреплена и защищена информация

Алгебры хранится в форматах файлов, содержащих записи. На физическом уровне фактическая информация закреплена в электромагнитном формате на каком-либо устройстве. Эти устройства хранения могут быть разделены на три категории:

  1. Первичное. К этой категории относится память, которая напрямую доступна для ЦП. Регистры, быстрая память (кэш) и основная (ОЗУ) напрямую доступны для центральной, так как все они размещены на материнской плате или чипсете. Это хранилище, как правило, очень маленькое, сверхбыстрое и неустойчивое. Для поддержания состояния требуется постоянный источник питания. В случае сбоя все его данные теряются.
  2. Вторичное. Используется для хранения информации для будущего использования или резервного копирования. Включает в себя устройства памяти, которые не являются частью чипсета или материнской платы процессора, например магнитные диски, оптические диски (DVD, CD и т. д.), жесткие диски, флэш-накопители и магнитные ленты.
  3. Третичное. Используется для хранения огромных объемов данных. Поскольку такие запоминающие устройства являются внешними по отношению к компьютерной системе, они являются самыми медленными по скорости. Эти гаджеты хранения в основном используются для резервного копирования всей системы. Оптические диски и магнитные ленты широко используются в качестве третичного хранилища.

Для эффективности запроса важны специальные операции реляционной алгебры.

Структура хранения

Компьютерная система имеет четко определенную иерархию памяти. ЦП имеет прямой доступ к основной системе, а также к встроенным регистрам. Время доступа к основной памяти, очевидно, меньше, чем скорость процессора. Чтобы минимизировать это несоответствие, вводится кэш. Кэш-память обеспечивает самое быстрое время доступа и содержит данные, которые наиболее часто обращаются к ЦП.

Память с самым быстрым доступом является самой дорогостоящей. Большие устройства хранения данных обеспечивают небольшую скорость, и они дешевле, однако они могут хранить огромные объемы данных по сравнению с регистром процессора или кэш-памятью.

Магнитные и жесткие диски являются наиболее распространенными вторичными устройствами хранения в современных компьютерных системах. Они называются магнитными, состоят из металлической основы. Эти диски размещаются вертикально на шпинделе. Головка чтения/записи перемещается между ними и используется для намагничивания или снятия такого пятна под ним. Его можно распознать как 0 (ноль) или 1 (один).

Жесткие диски отформатированы в четко определенном порядке для эффективного хранения данных. На нем много концентрических кругов, называемых дорожками. Каждый трек далее разделяется на сектора, где обычно хранится 512 байт данных.

Файловые операции

Операции над системой языка реляционной алгебры и ее базы данных можно в целом классифицировать по двум категориям:

  • обновление;
  • поиск.

Первая категория изменяет значения данных путем вставки, удаления или обновления. С другой стороны, операции поиска не редактируют информацию, а извлекают ее после необязательной условной фильтрации. В обоих типах операций отбор играет значительную роль. Помимо создания и удаления файла может быть несколько операций, которые могут в них выполняться:

  1. Открыть - существует в одном из двух режимов чтения или записи. В первом случае операционная система не позволяет никому изменять данные. Другими словами, данные только считываются. Файлы, открытые в режиме чтения, могут совместно использоваться несколькими объектами. Режим записи позволяет изменять данные. Файлы могут быть прочитаны, но не могут использоваться совместно.
  2. Закрыть - это самая важная операция с точки зрения операционной системы, так как она удаляет все блокировки (если в режиме общего доступа), сохраняет данные (если они изменены) на вторичный носитель и освобождает все буферы и обработчики, связанные с файлом.
  3. Индексирование - это метод структуры информации для эффективного извлечения записей из файлов системы на основе некоторых атрибутов, где была выполнена эта система. Определяется на основе атрибутов.

Индексирование может быть следующего типа:

  1. Первичный определяется в файле упорядоченных данных. Файл информации упорядочен в ключевом поле.
  2. Вторичный индекс сгенерирован из поля, которое является ключом-кандидатом, и имеет уникальное значение в каждой записи или не ключ с повторяющимися значениями.
  3. Кластеризация определяется в упорядоченном файле данных, в не ключевом поле.

Система управления базами данных или СУБД относится к технологии хранения и извлечения информации пользователей с максимальной эффективностью наряду с соответствующими мерами безопасности. Детальное рассмотрение этого вопроса приводит к выводу, что реляционная алгебра является языком операторов, которые применяют отношения в качестве аргументов и возвращают их в результате.


Введение. 4

1. Базы данных и СУБД 6

2. Реляционные базы данных 20

3. Операции над таблицами реляционных баз данных 29

4. Разработка инфологических моделей 49

5. Организация доступа к данным 64

6. Принципы построения систем, ориентированных на анализ данных 96

Заключение. 106

Список наиболее часто встречающихся сокращений. 107

Введение.

Литературы на русском языке, посвященной тематике СУБД, очень мало. Невозможно порекомендовать одну или несколько книг, содержание которых покрывало бы материал курса «Базы данных». К числу лучших относятся книги К. Дейта "Введение в системы баз данных" (Наука, 1980) и "Руководство по реляционной СУБД DB2" (Финансы и статистика, 1988), а также книга Дж. Ульмана "Основы систем баз данных" (Финансы и статистика, 1983). Хотя эти книги несколько устарели (на английском языке вышло уже несколько дополненных изданий), их стоит читать.

Данное учебное пособие на наш взгляд призвано систематизировать и представить методически в доступной для первоначального изучения и освоения форме материал в объеме и по содержанию, отвечающем требованиям программы курса «Базы данных». Оно состоит из шести взаимосвязанных разделов, в которых последовательно шаг за шагом рассмотрены следующие вопросы:


    1. концепция баз данных, архитектура СУБД (инфологическая модель данных, даталогическая модель данных, физическая модель данных, типы даталогических моделей данных, иерархическая даталогическая модель, сетевая даталогическая модель, даталогическая модель на основе инвертированных списков, реляционная даталогическая модель, объектно-реляционная даталогическая модель);

    2. реляционные базы данных (основные понятия реляционных баз данных, тип данных, домен, схема отношения, схема базы данных, кортеж, отношение, целостность реляционных баз данных, основные свойства отношений реляционных баз данных);

    3. операции над таблицами реляционных баз данных (операции теории множеств, нормализация отношений реляционных баз данных);

    4. использование языка ER-диаграмм для построения инфологических моделей (диаграммы "сущность-связь", информационное моделирование, методология IDEF1X, этапы разработки инфологической модели данных);

    5. организация доступа к данным (средства ускоренного доступа к данным, язык запросов, обработка транзакций, средства восстановления после сбоев);

    6. принципы построения систем, ориентированных на анализ данных (хранилища данных; модели данных, используемые при построении хранилищ данных).
Учебное пособие предназначено для студентов всех специальностей и форм обучения.

1. Базы данных и СУБД

1.1. Данные и ЭВМ

Восприятие реального мира можно соотнести с последовательностью разных, хотя иногда и взаимосвязанных, явлений. С давних времен люди пытались описать эти явления (даже тогда, когда не могли их понять). Такое описание называют данными .

Традиционно фиксация данных осуществляется с помощью конкретного средства общения (например, с помощью естественного языка или изображений) на конкретном носителе (например, камне или бумаге). Обычно данные (факты, явления, события, идеи или предметы) и их интерпретация (семантика) фиксируются совместно, так как естественный язык достаточно гибок для представления того и другого. Примером может служить утверждение "Стоимость авиабилета 128". Здесь "128" – данное, а "Стоимость авиабилета" – его семантика.

Нередко данные и интерпретация разделены. Например, "Расписание движения самолетов" может быть представлено в виде таблицы (рис. 1.1.1), в верхней части которой (отдельно от данных) приводится их интерпретация. Такое разделение затрудняет работу с данными (попробуйте быстро получить сведения из нижней части таблицы).


Интерпретация

Номер рейса

Дни недели

Пункт отправления

Время вылета

Пункт назначения

Время прибытия

Тип самолета

Стоимость билета

Данные

138

2_4_7

Баку

21.12

Москва

0.52

ИЛ-86

115.00

57

3_6

Ереван

7.20

Киев

9.25

ТУ-154

92.00

1234

2_6

Казань

22.40

Баку

23.50

ТУ-134

73.50

242

1 по 7

Киев

14.10

Москва

16.15

ТУ-154

57.00

86

2_3_5

Минск

10.50

Сочи

13.06

ИЛ-86

78.50

137

1_3_6

Москва

15.17

Баку

18.44

ИЛ-86

115.00

241

1 по 7

Москва

9.05

Киев

11.05

ТУ-154

57.00

577

1_3_5

Рига

21.53

Таллин

22.57

АН-24

21.50

78

3_6

Сочи

18.25

Баку

20.12

ТУ-134

44.00

578

2_4_6

Таллин

6.30

Рига

7.37

АН-24

21.50

Рис. 1.1.1. Данные и их интерпретация.

Применение ЭВМ для ведения (сопровождения, поддержки) и обработки данных обычно приводит к еще большему разделению данных и интерпретации. ЭВМ имеет дело главным образом с данными как таковыми. Большая часть интерпретирующей информации вообще не фиксируется в явной форме (ЭВМ не "знает", является ли "21.50" стоимостью авиабилета или временем вылета). Почему же это произошло?

Существует по крайней мере две исторические причины, по которым применение ЭВМ привело к отделению данных от интерпретации. Во-первых, ЭВМ не обладали достаточными возможностями для обработки текстов на естественном языке – основном языке интерпретации данных. Во-вторых, стоимость памяти ЭВМ была первоначально весьма велика. Память использовалась для хранения самих данных, а интерпретация традиционно возлагалась на пользователя. Пользователь закладывал интерпретацию данных в свою программу, которая "знала", например, что шестое вводимое значение связано со временем прибытия самолета, а четвертое – со временем его вылета. Это существенно повышало роль программы, так как вне интерпретации данные представляют собой не более чем совокупность битов на запоминающем устройстве. Жесткая зависимость между данными и использующими их программами создает серьезные проблемы в ведении данных и делает использования их менее гибкими.1.2. Концепция баз данных. Архитектура СУБД

Активная деятельность по отысканию приемлемых способов обобществления непрерывно растущего объема информации привела к созданию в начале 60-х годов специальных программных комплексов, называемых "Системы управления базами данных " (СУБД). СУБД – программное обеспечение, осуществляющее создание баз данных, поддержание ее в рабочем состоянии и обеспечение эффективного доступа к данным базы для пользователей и для приложений. Основная особенность СУБД – это наличие процедур для ввода и хранения не только самих данных, но и описаний их структуры. Файлы, снабженные описанием хранимых в них данных и находящиеся под управлением СУБД, стали называть банки данных, а затем "Базы данных " (БД). Таким образом, База данных (БД)– отражение предметной области в форме структурированной совокупности данных. Хранящиеся в ней данные характеризуют состав объектов предметной области, их свойства и взаимосвязи.

СУБД должна предоставлять доступ к данным любым пользователям, включая и тех, которые практически не имеют и (или) не хотят иметь представления о:


  • физическом размещении в памяти данных и их описаний;

  • механизмах поиска запрашиваемых данных;

  • проблемах, возникающих при одновременном запросе одних и тех же данных многими пользователями (прикладными программами);

  • способах обеспечения защиты данных от некорректных обновлений и (или) несанкционированного доступа;

  • поддержании баз данных в актуальном состоянии
и множестве других функций СУБД.

При выполнении основных из этих функций СУБД должна использовать различные описания данных. А как создавать эти описания?

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

1.2.1. Инфологическая модель данных

Объединяя частные представления о содержимом базы данных, полученные в результате опроса пользователей, и свои представления о данных, которые могут потребоваться в будущих приложениях, АБД сначала создает обобщенное неформальное описание создаваемой базы данных. Это описание, выполненное с использованием естественного языка, математических формул, таблиц, графиков и других средств, понятных всем людям, работающих над проектированием базы данных, называют инфологической моделью данных (рис. 1.2.1).

Рис. 1.2.1. Уровни моделей данных

Такая человеко-ориентированная модель полностью независима от физических параметров среды хранения данных. В конце концов этой средой может быть память человека, а не ЭВМ. Поэтому, инфологическая модель не должна изменяться до тех пор, пока какие-то изменения в реальном мире не потребуют изменения в ней некоторого определения, чтобы эта модель продолжала отражать предметную область.

Остальные модели, показанные на рис. 1.2.1, являются компьютеро-ориентированными. С их помощью СУБД дает возможность программам и пользователям осуществлять доступ к хранимым данным лишь по их именам, не заботясь о физическом расположении этих данных. Нужные данные отыскиваются СУБД на внешних запоминающих устройствах по физической модели данных .

1.2.2. Даталогическая модель данных

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

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

1.2.3. Физическая модель данных

В отличие от инфологической модели данных, физическая модель полностью зависит от конкретной СУБД. В ней должны быть учтены

  • ограничения на длину имен объектов базы данных (таблиц, столбцов, индексов),

  • использование специальных символов в именах,

  • допустимые типы данных и их внутреннее представление на устройствах хранения данных в ЭВМ.
Одной и той же инфологической модели данных могут соответствовать несколько разных физических моделей.

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

Добавить - внести запись в БД и, в зависимости от режима включения, либо включить ее в групповое отношение, где она объявлена подчиненной, либо не включать ни в какое групповое отношение.
Включить в групповое отношение - связать существующую подчиненную запись с записью-владельцем.
Переключить - связать существующую подчиненную запись с другой записью-владельцем в том же групповом отношении.
Обновить - изменить значение элементов предварительно извлеченной записи.
Извлечь - извлечь записи последовательно по значению ключа, а также используя групповые отношения - от владельца можно перейти к записям - членам, а от подчиненной записи к владельцу набора.
Удалить - убрать из БД запись. Если эта запись является владельцем группового отношения, то анализируется класс членства подчиненных записей. Обязательные члены должны быть предварительно исключены из группового отношения, фиксированные удалены вместе с владельцем, необязательные останутся в БД.
Исключить из группового отношения - разорвать связь между записью-владельцем и записью-членом.

Реляционная модель базы данных

Во-первых , все данные в модели представляются только в виде таблиц и связей между ними. Реляционная модель - единственная из всех обеспечивает единообразие представления данных.

Второй элемент модели - реляционно-полный язык. Полнота языка в приложении к реляционной модели означает, что он должен выполнять любую операцию реляционной алгебры . Более того, язык должен описывать любой запрос в виде операций с таблицами, а не с их строками. Одним из таких языков является SQL .

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

Объектно-ориентированная модель.

В объектно-ориентированных базах данных, в отличие от реляционных, хранятся не записи, а объекты (текст, аудио- и видеоинформация, документы и другие объекты). Также важна задача сохранения состояния объектов между повторными запусками прикладной программы. Однако, развитого математического аппарата, на который могла бы опираться общая объектно-ориентированная модель данных , не существует.

Большинство ООСУБД представляют собой библиотеку, процедуры управления данными которой включаются в прикладную программу. Несмотря на преимущества объектно-ориентированных систем - реализация сложных типов данных , связь с языками программирования и т.п. - на ближайшее время превосходство реляционных СУБД гарантировано.

Объектно-реляционные СУБД

Разница между объектно-реляционными и объектными СУБД : первые являют собой надстройку над реляционной схемой, вторые же изначально объектно-ориентированы. Главная особенность и отличие объектно-реляционных (как и объектных) СУБД от реляционных заключается в том, что ОРСУБД интегрированы с Объектно-Ориентированным (OO) языком программирования, внутренним или внешним как C++, Java .

Объектно-реляционными СУБД являются, например, широко известные Oracle Database , Microsoft SQL Server , PostgreSQL, Microsoft Access.

Реляционный подход к построению модели предметной области.

· предметная область моделируется совокупностью отдельных информационных объектов (сущностей), каждый из которых описывается своей двумерной таблицей;

· между таблицами существуют связи;

· каждый элемент таблицы - один элемент данных;

· все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип (числовой, символьный и т.д.) и длину;

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

· каждый столбец имеет уникальное имя;

· строка содержит значения атрибутов для одного экземпляра сущности;

· одинаковые строки в таблице отсутствуют (наличие первичного ключа);

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

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

Первая нормальная форма

Отношение (таблица) называется нормализованным или приведенным к первой нормальной форме , если все его атрибуты простые (далее неделимы).

Преобразование отношения к первой нормальной форме может привести к увеличению количества реквизитов (полей) отношения и изменению ключа.

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

· таблица должна содержать данные об одном типе объектов;

· каждая таблица должна содержать одно поле или несколько полей, образующих уникальный идентификатор (или первичный ключ) для каждой строки;

· все неключевые поля должны определяться полным уникальным идентификатором данной таблицы.

Третья нормальная форма

Требование третьей нормальной формы сводится к тому, чтобы все нёключевые поля зависели только от первичного ключа и не зависели друг от друга. Другими словами, нужно иметь возможность изменять значение любого неключевого поля, не изменяя значения любого другого поля базы данных.

Типы связей. Свойства отношений

· Отношение "один-к-одному" (1:1) означает, что каждая запись в одной таблице соответствует не более чем одной записи в другой таблице.

· Отношение "один-ко-многим" (1:М) означает, что каждой записи в одной таблице соответствует 0 или 1 или несколько записей в другой таблице.

· Отношение "многие-к-одному" (М:1) аналогично рассмотренному ранее типу "один-ко-многим". Тип отношения между объектами зависит от точки зрения.

· Отношение "многие-ко-многим" (М:М). возникает между двумя таблицами тогда, когда каждой записи в одной таблице соответствует 0 или более записей в другой таблице и наоборот.

Простые и составные ключи

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

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

Такой первичный ключ называют составным ключом

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

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

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

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Министерство образования Российской Федерации

Пензенский государственный университет

Факультет вычислительной техники

Кафедра "Информационно-вычислительные системы"

Дисциплина "Базы данных"

Отчет по лабораторной работе № 1

"Операции с базой данных"

Выполнил: ст-ка гр. 13ВЭ1

Юдина С.В.

Принял: к. т. н., доцент

Долгова И.А.

  • 1. Цель работы
  • Задание
  • 2. Выполнение работы
  • Создание базы данных
  • Регистрация базы данных
  • Подключение к базе данных
  • Извлечение метаданных
  • Удаление базы данных
  • Заключение
  • Приложения

1. Цель работы

Изучить операции с базами данных в целом. Получить навыки использования приложения "IBExpert" для создания, удаления, регистрации, подключения, извлечения метаданных, резервного копирования и восстановления базы данных СУБД Firebird. Изучить SQL-операторы для создания, подключения и удаления базы данных.

Задание

1) Изучить операции с базами данных в целом.

2) Получить навыки использования приложения "IBExpert" для создания, удаления, регистрации, подключения, извлечения метаданных, резервного копирования и восстановления базы данных СУБД Firebird.

3) Изучить SQL-операторы для создания, подключения и удаления базы данных.

Для варианта 17 исходными данными являются имя файла с БД - YudinaDom1. FDB, Логин - TEAM001, Пароль - slave001.

2. Выполнение работы

Создание базы данных

С помощью инструмента IBExpert была создана база данных. При этом в качестве сервера базы данных использовался удаленный сервер с именем sqledu03.

Файл базы данных имеет имя D: \Data\Лр1\YudinaDom1. FDB, Сервер - удаленный, Имя сервера - sqledu03, Протокол - TCP/IP, Client Library File - C: \Program Files\Firebird\Firebird_2_5\bin\fbclient. dll, Имя пользователя - TEAM001, Пароль - slave001, Размер страницы БД - 16384, Кодировка - WIN1251, Диалект БД - Диалект 3.

База данных зарегистрирована под именем YudinaDom1. FDB. При этом использован сервер Firebird версии 2.5 (См. Приложение A, Рис.1. Создание БД).

Регистрация базы данных

Для регистрации базы данных нужно выбрать пункт меню База данных > Зарегистрировать базу. В результате открывается диалоговое окно "Регистрация базы данных", в котором надо заполнить практически такие же поля, что и при создании базы данных, затем нажать кнопку . После регистрации вся введенная о базе данных информация запоминается приложением IBExpert и в окно "Database Explorer", в дерево на вкладке "Базы" добавляется узел с зарегистрированной базой данных (См. Приложение А, Рис.2. Регистрация БД).

база оператор резервное копирование

Подключение к базе данных

Чтобы подключиться к зарегистрированной базе данных, необходимо выбрать базу данных в списке и выполнить команду База данных > Подключиться к базе. Название подключенной базы данных в окне "Database Explorer" будет выделено жирным шрифтом, а также появятся вложенные узлы с объектами, содержащимися в подключенной базе данных (См. Приложение А, Рис.3. Подключение к БД).

Извлечение метаданных

Для извлечения метаданных используется команда главного меню Инструменты > Извлечение метаданных, которая открывает окно "Извлечение метаданных". В окне устанавливаем флажок "Извлечь всё", затем с помощью выпадающего списка "Извлекать в" выбираем "Script Executive", в которое будут извлечены метаданные, а затем нажимаем кнопку [Начать извлечение] (См. Приложение А, Рис.4. Извлечение метаданных). После извлечения открывается окно "Редактор скриптов", в котором будут находиться извлеченные метаданные. (См. Приложение А, Рис.5. Извлечение метаданных (редактор скриптов)).

Удаление базы данных

Для удаления базы данных необходимо выбрать команду меню База данных > Удалить базу, а затем подтверждаем свое желание в диалоговом окне. (См. Приложение А, Рис.6. Удаление БД (меню База данных)).

Создание базы данных при помощи "Редактора скриптов"

Для создания базы данных необходимо выполнить в приложении IBExpert команду Инструменты > Редактор скриптов, затем ввести команды, создающие базу данных в окне "Редактор скриптов" и нажать кнопку [Выполнить скрипт] (См. Приложение А, Рис.7. Создание БД (редактор скриптов). В результате должно появиться сообщение об успешном выполнении скрипта. Для дальнейшей работы необходимо вновь выполнить регистрацию базы данных и подключиться к ней.

Резервное копирование базы данных и ее восстановление

Для создания резервной копии базы данных с помощью приложения "IBExpert" необходимо выполнить команду меню Службы > Резервирование базы данных, в открывшемся диалоговом окне "Резервирование БД" задать несколько параметров и нажать кнопку [Начать резервное копирование]. В результате будет создан файл с резервной копией (См. Приложение А, Рис.8. Резервное копирование).

Для восстановления базы данных из резервной копии используется команда Службы > Восстановление базы данных. В результате открывается диалоговое окно "Восстановление БД", в котором надо в поле "Restore Info" выбрать строку "Новую базу", в поле "Database file" ввести имя восстанавливаемого файла базы данных (SQLEDU03: D: \DATA\Лр1\YudinaDom1. FDB), в поле "File Name" ввести имя файла, из которого будет восстанавливаться база данных, затем нажать кнопку (См. Приложение А, Рис.9. Восстановление БД).

Файлы, полученные при выполнении лабораторной работы.

Отредактирован сценарий создания базы данных. (См. Приложение А, Рис. 10. Редактор сценария базы данных). Сохранен файл сценария на сервере в папке "ЛР1"с таким же именем, как и имя базы данных, стандартное расширение". sql".

В результате выполнения лабораторной работы были созданы следующие файлы:

1) Сценарий - D: \Data\Лр1\ YudinaDom1. sql

2) БД - D: \Data\Лр1\ YudinaDom1. fdb

3) Резервная копия БД - D: \Data\Лр1\YudinaDom1. fbk

4) Файл с отчетом - D: \Data\Лр1\Отчет1. odt

Ответы на контрольные вопросы

1. Дать определение термина "База данных".

БД - это некоторый набор устойчивых данных, отражающий состояние объектов и их отношений в рассматриваемой предметной области и используемый прикладными системами какого-либо предприятия.

2. Что означают сокращения СУБД и DBMS?

Система Управления Базами Данных. Database Management System .

3. Какие операции проводятся с базой данных в целом?

Добавление новых данных, удаление, редактирование.

4. Что представляет собой база данных СУБД Firebird? Какой получился размер файла с базой данных? От чего он зависит? Что содержится в файле с базой данных?

СУБД Firebird - это реляционная СУБД, предназначенная для использования в приложениях с архитектурой клиент/сервер. В Firebird база данных представляет собой один или несколько файлов, в которых хранятся данные пользователя и метаданные - 2,40 Мбайта. От количества содержащейся информации. Первичные файлы данных, вторичные файлы данных и файлы журналов.

Размер влияет на эффективность работы СУБД, размер страницы рекомендуется делать равным размеру кластера файловой системы, по умолчанию размер страниц равен 16384.

6. Что надо сделать, чтобы в базе данных можно было хранить символы русского алфавита?

Поле ввода "Кодировка" предназначено для выбора набора символов национального алфавита для текстовых полей базы данных. Русские символы Windows содержатся в кодировке Win1251. Если в это поле ввести NONE, то будет поддерживаться кодировка, используемая операционной системой.

7. Назвать отличия между первым и третьим диалектами базы данных.

В диалекте 3 в отличие от диалекта 1 используется расширенный набор типов данных, различается регистр идентификаторов, записанных в двойных кавычках, а также не поддерживается неявное приведение типов данных.

8. Какие существуют способы создания и удаления базы данных?

Для создания базы данных можно использовать один из двух способов:

1. Выполнить команду База данных > Создать базу в приложении IBExpert, ввести параметры создаваемой базы данных в диалоговом окне "Создание базы данных" и нажать кнопку [OK ].

2. Выполнить в приложении IBExpert команду Инструменты > Редактор скриптов , затем ввести команды, создающие базу данных в окне "Редактор скриптов" и нажать кнопку [Выполнить скрипт ] (F9).

Для удаления:

1. Выполнить в программе "IBExpert" команду меню База данных > Удалить базу, а затем подтвердить свое желание в диалоговом окне.

2. Выполнить SQL-оператор DROP DATABASE.

3. Удалить файл с базой данных вручную.

9. Как указывается путь до файла с базой данных, расположенной на удаленном компьютере?

Имя сервера: Путь к файлу (sqledu03: D: \Data\Лр1\ YudinaDom1. fdb)

10. Какие стандартные расширения имеют файлы баз данных и сценариев?

Файл базы данных". fdb", сценария". sql".

11. Как с помощью приложения "IBExpert" подключиться к имеющейся базе данных, расположенной на локальном компьютере?

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

12. Какое имя и начальный пароль имеет администратор сервера Firebird?

Имя: SYSDBA, пароль: masterkey.

13. Какие виды комментариев могут содержать файлы сценариев для выполнения операций с базой данных?

Сценарий может содержать поясняющие комментарии двух видов: многострочный комментарий (начинается символами "/*" и заканчивается символами "*/") и однострочный комментарий, который начинается символами " - " и продолжается до конца строки.

14. Сколько системных таблиц содержит созданная база данных? С каких символов они начинаются? Привести названия любых 3-х системных таблиц.

34 таблицы. Начинается с символа "sys.". Примеры: "sys. sysschobjs" - Существует в каждой базе данных. Каждая строка представляет объект базы данных; "sys. sysscalartypes" - Существует в каждой базе данных. Содержит по строке на каждый системный или пользовательский тип данных; "sys. sysowners" - Существует в каждой базе данных. Каждая строка соответствует участнику базы данных.

15. Каковы правила оформления текста сценария?

Выражения в операторе всегда начинается с новой строки, с отступом в 1 позицию от правого края родительского элемента оператора (SELECT, FROM, WHERE, INTO, …). Содержащиеся в сценарии операторы отделяются друг от друга символом ";". При объявлении таблиц наименования столбцов, типы, значения по умолчанию, ограничения Nullable выравниваются по левому краю.

Заключение

В ходе выполнения лабораторной работы были изучены операции с базами данных в целом. Получены навыки использования приложения "IBExpert" для создания, удаления, регистрации, подключения, извлечения метаданных, резервного копирования и восстановления базы данных СУБД Firebird. Изучены SQL-операторы для создания, подключения и удаления базы данных.

Размещено на Allbest.ru

Подобные документы

    Система управления базами данных (СУБД). Программные средства, предназначенные для создания, наполнения, обновления и удаления базы данных. Структура, модели и классификация баз данных. Создание каталогов, псевдонимов, таблиц, шаблонов и форм СУБД.

    презентация , добавлен 09.01.2014

    Проектирование реляционной базы данных с помощью прикладного программного средства MS ACCESS. Описания особенностей использования запросов для извлечения, изменения и удаления информации из базы данных. Характеристика структуры интерфейса пользователя.

    курсовая работа , добавлен 19.11.2012

    Классификация баз данных. Выбор системы управления базами данных для создания базы данных в сети. Быстрый доступ и получение конкретной информации по функциям. Распределение функций при работе с базой данных. Основные особенности иерархической модели.

    отчет по практике , добавлен 08.10.2014

    Язык описания данных Oracle. Предназначение базы данных для хранения информации. Создание и изменение таблиц с помощью операторов Create и Alter table. Правила именования таблицы. Операторы Rename и Truncate. Метод создания и удаления представления.

    презентация , добавлен 14.02.2014

    Механизм и основные этапы создания и администрирования базы данных для Картотеки книг или библиотеки при помощи средств Microsoft SQL Server. Характеристика данной базы и требования, предъявляемые к ней. Основные операции с исследуемой базой данных.

    курсовая работа , добавлен 21.06.2011

    Понятие реляционной модели данных, целостность ее сущности и ссылок. Основные этапы создания базы данных, связывание таблиц на схеме данных. Проектирование базы данных книжного каталога "Books" с помощью СУБД Microsoft Access и языка запросов SQL.

    курсовая работа , добавлен 25.11.2010

    Проектирование физической и логической моделей удаленной базы данных для АЗС. Разработка базы данных в СУБД Firebird с помощью утилиты IBExpert. Создание клиентского приложения для Windows с использованием клиент-серверной технологии в среде C++ Builder.

    курсовая работа , добавлен 18.01.2017

    Создание базы данных в среде MS Access. Создание и работа с базой данных в ателье. Алгоритм решения задачи. Выбор пакета прикладных программ. Проектирование форм выходных документов с использованием СУБД MS Access. Структура записи таблиц базы данных.

    курсовая работа , добавлен 30.01.2009

    СУБД - многопользовательские системы управления базой данных, специализирующиеся на управлении массивом информации. Запросы на выборку и изменение данных, формирование отчетов по запросам выборки. Схема базы данных. Программа по управлению базой данных.

    реферат , добавлен 27.12.2013

    Назначение базы данных для обеспечения работы автобусного парка. Основные возможности админпанели. Выполняемые базой данных и приложением функции. Инфологическое моделирование данных. Описание разработанного web-приложения. Проектирование базы данных.