Тема 4. Базы данных.

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

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

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

Два уровня представления данных: Физические данные – это данные, хранящиеся в памяти ЭВМ, на ее запоминающих устройствах. Для долговременного хранения больших объемов данных используется вторичная память (внешние запоминающие устройства – ВЗУ). Логическое представление данных соответствует пользовательскому представлению о данных. Логическое представление отражает существующие взаимосвязи между элементами данных.

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

Правила описания данных определяются выбранной моделью данных (основными являются реляционная модель данных, сетевая и иерархическая модели).

Модель данных состоит из трех компонентов:

структура данных, представляющая точку зрения пользователя на БД;

допустимые операции, выполняемые на определенной структуре данных;

ограничения для контроля целостности данных.

Целостность БД означает поддержание данных в ней в таком состоянии, когда все значения данных «правильны» (отражают состояние реального объекта в пределах заданных ограничений по точности и временнόй согласованности) и подчиняются правилам взаимной непротиворечивости

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

 

При использовании реляционного подхода к созданию БД основными свойствами СУБД являются следующие:

– вся информация в БД представлена в виде таблиц;

– все операции в БД реализуются как операции над таблицами, результатом выполнения этих операций также являются таблицы.

Определение реляционной модели включает ряд фундаментальных правил.

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

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

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

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

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

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

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

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

 

Существуют различные типы отношений:

1. Один-ко-многим (1:N): единственной записи в первой таблице может соответствовать несколько записей во второй таблице;

2. Многие-ко-многим (N:N): записям в первой таблице может соответствовать несколько записей во второй и наоборот – каждой записи из второй таблицы может соответствовать множество записей в первой таблице;

3. Один-к-одному (1:1): каждой записи в одной таблице соответствует одна запись во второй.

 

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

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

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

 

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

 

В мире существует множество систем управления базами данных. Несмотря на то, что они могут по разному работать с разными объектами и предоставляют пользователю различные функции и средства, большинство СУБД опираются на единый устоявшийся комплекс основных понятий. Это дает нам возможность рассмотреть одну систему и обобщить ее понятия, приемы и методы на весь класс СУБД В качестве такого учебного объекта мы выберем СУБД Мiсrоsоft Access, входящую в пакет Мiсrоsоft .