Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по информатике_new.doc
Скачиваний:
42
Добавлен:
15.08.2019
Размер:
1.35 Mб
Скачать

Системы управления базами данных

Введение в системы управления базами данных (СУБД)

Основные понятия

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

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

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

  • физическая модель и

  • логическая (информационная) модель.

Физическая модель означает организацию базы данных в файловой системе.

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

Модель данных - это совокупность взаимосвязанных структур данных и операций над ними.

Существует три типа логических моделей:

  • Иерархическая модель данных;

  • Сетевая модель данных;

  • Реляционная модель данных.

  1. Иерархическая модель - ориентированный граф.

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

  1. Сетевая модель - неориентированный граф.

Основная идея - каждый объект (запись) может быть подчинен нескольким объектам.

  1. Реляционная модель - совокупность таблиц-отношений

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

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

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

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

Понятие реляционный модели (relation - отношение) связано с разработками известного американского специалиста в области баз данных Кодда в 1970 году. Концепция реляционной модели была предложена при решении задачи об обеспечении независимости представления и описания данных. Было доказано, что набор таблиц может быть использован для хранения данных об объектах реального мира и моделирования связей между ними. Эта модель характеризуется простотой структуры данных.

При проектировании реляционной базы данных устанавливается структурная связь между информационными объектами (ИО) для обеспечения всевозможных запросов. Для установления связи необходимо, чтобы между информационными объектами существовали реальные отношения. Существует три типа отношений:

  • Один ИО к одному ИО

  • Один ИО ко многим ИО

  • Многие ИО ко многим ИО.

Реальные отношения "Один ИО к одному ИО" имеют место тогда, когда каждому экземпляру первого ИО соответствует только один экземпляр второго ИО и наоборот.

Реальные отношения "Один ИО ко многим ИО" " имеют место тогда, когда каждому экземпляру первого ИО соответствует несколько экземпляров другого ИО, обратное неверно.

Реальные отношения " Многие ИО ко многим ИО" " имеют место тогда, когда каждому экземпляру первого ИО соответствует несколько экземпляров другого ИО и наоборот, каждому экземпляру второго ИО соответствует несколько экземпляров первого ИО.

Терминология

Теория

Реляционные БД

Принятые соглашения

Отношение

Таблица

Таблица

Кортеж

Строка

Запись

Атрибут

Столбец

Поле

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

Поле имеет следующие характеристики:

  • Имя

  • Тип

  • Длину

  • Точность для числовых данных.

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

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

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

Правило 1: Уникальность полей

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

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

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

Правило 2: Первичные ключи

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

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

Всегда, когда это возможно, в качестве первичного ключа следует использовать самые простые данные, имеющие «естественные» уникальные значения, например код книги.

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

Правило 3: Функциональная зависимость

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

Правило 3. Для каждого значения первичного ключа значения в столбцах данных должны относиться к объекту таблицы и полностью его описывать.

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

Правило 4: Независимость полей

И, наконец, последнее правило позволяет проверить, не возникнут ли проблемы при изменении данных в таблицах.

Правило 4. Нужно иметь возможность изменять значения любого поля (не входящего в первичный ключ) без воздействия на данные других полей.

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

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

Классификация баз данных по способу обработки

По технологии обработки базы данных могут подразделяться на централизованные и распределенные.

Централизованная база данных хранится на одной ЭВМ, которая является компонентом сети.

Распределенная база данных состоит из нескольких, возможно пересекающихся или даже дублирующих друг друга, хранимых на разных ЭВМ вычислительной сети. Работа с такой базой данных ведется с помощью СУРБД - системой управления распределенной БД (например, Oracle).

Общие сведения о СУБД

СУБД - это система для создания баз данных в различных прикладных областях. По универсальности различают два класса СУБД:

  1. Специализированные СУБД

  2. СУБД общего назначения.

Специализированные СУБД ориентированы на конкретную область и поддерживают ряд функций, таких как поиск по заданным параметрам, визуализация в текстовом редакторе, например, MS Word, сохранение, печать, а также пополнение базы данных. К таким СУБД можно отнести например, информационно-поисковые системы (ИПС).

На Российском рынке широко известны такие системы, как база нормативных документов таможенного цикла ВЭД-инфо, информационно-правовые системы КонсультантПлюс, Кодекс и Гарант.

Каждая из этих систем имеет свой интерфейс, свой набор функций для работы, однако есть общие функции:

  1. Поиск документов по реквизитам (простой и сложный)

  2. Просмотр документов

  3. Сохранение документов

  4. Печать документов.

В данном курсе на практических занятиях подробно рассматривается ИПС КонсультантПлюс, которая состоит из нескольких баз:

  • Консультант профессионал

  • Консультант эксперт

  • Консультант арбитраж

  • Консультант финансист и бухгалтер

  • Консультант международное право.

Основная идея состоит в том, что база данных содержит карточки с полями такие, как Вид документа, Орган принятия, Дата принятия, Название документа и т.д., по которым можно осуществлять поиск нужных нормативных документов.

СУБД общего назначения - это очень сложные программные комплексы, предназначенные для выполнения всей совокупности функций по созданию и эксплуатации баз данных в любой области. Основные разработки СУБД на мировом рынке принадлежат фирмам Microsoft (FoxPro-DOS/WIN, Access) и Borland (Paradox-DOS/WIN).

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