Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 12.doc
Скачиваний:
51
Добавлен:
18.08.2019
Размер:
1.7 Mб
Скачать

Лекция № 7 Системы управления базами данных

Определение. В широком смысле слова база данных (БД) - это совокупность сведений о какой-либо конкретной предметной области реального мира.

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

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

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

Личное дело №16493, Сергеев Петр Михайлович, дата рождения 1 января 1976г. Л/д №16593, Петрова Анна Владимировна, дата рождения 15 марта 1975г. № личн. Дела 16693, д.р. 14.04.76, Анохин Андрей Борисович.

Это пример неструктурированных данных. Чтобы автоматизировать поиск и систематизировать данные представим их в структурированном виде:

личного дела

Фамилия

ИИмя

Отчество

Дата рождения

16493

Сергеев

Петр

Михайлович

01.01.76

16593

Петрова

Анна

Владимировна

15.03.75

16693

Анохин

Андрей

Борисович

14.04.76

Пример реляционной таблицы

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

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

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

Графическое изображение иерархической структуры БД

К каждой записи иерархической базы данных существует только один путь от корневой записи.

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

Графическое изображение сетевой структуры

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

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

  1. DBASE - создает файлы с расширением .dbf (data base file), существует DBASE for Windows, наиболее простая, приспособлена под кириллицу, но несколько устаревшая СУБД;

  2. CLIPPER - несколько устаревшая СУБД, работающая под DOS , поддерживающая формат dbf;

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

  4. PARADOX - популярная в настоящее время СУБД известной фирмы BORLAND, создает файлы с расширением .db, более совершенного формата, чем dbf;

  5. FOXPRO – СУБД фирмы Microsoft, работает с форматом dbf;

  6. ORACLE - СУБД одноименной фирмы, признанного лидера в области разработок современных баз данных, использует для представления данных так называемое «табличное пространство».

Пользующиеся повышенным спросом программные продукты: Oracle Personal Lite и Desinger 2000 позволяют, нарисовав так называемые ER - диаграммы получать программный код БД под Windows 95 или Windows NT. Более скромными возможностями в плане разработок БД обладает программный продукт Delphi фирмы Borland, но он более прост и доступен в освоении. Фирма Borland разработала универсальный интерфейс для взаимодействия с некоторыми распространенными форматами баз данных: dbf, db и некоторых других. Он носит название BDE IDAPI и входит в стандартный пакет Delphi. BDE имеет настройку на 866 кодовую страницу и позволяет использовать русские буквы.

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

Классификация БД

По технологии обработки данных БД подразделяются на централизованные и распределенные.

Централизованная БД - данные хранятся в одной ЭВМ, хотя она может быть подключена к локальной сети.

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

По способу доступа к данным БД подразделяются на:

БД с локальным доступом,

БД с удаленным (сетевым) доступом.

Наибольшее распространение получили централизованные БД с удаленным доступом. Различают две разновидности архитектуры таких систем:

  • файл - сервер;

  • клиент - сервер.

Архитектура файл – сервер

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

Схема обработки информации в БД по принципу файл-сервер

Архитектура клиент - сервер

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

Схема обработки информации в БД по принципу клиент-сервер

Сервер БД можно создать из файл-сервера, используя специальное программное обеспечение Informix, Interbase или Oracle, обрабатывающее SQL запросы. Так, например, Interbase входит в стандартный пакет Delphi клиент- сервер и поддерживает интерфейс ODBC.

Структурные элементы базы данных

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

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

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

  • все столбцы в таблице однородные, т.е. все элементы в столбце имеют

  • одинаковый тип (числовой, символьный и т. д.) и длину;

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

  • одинаковые строки в таблице отсутствуют;

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

Записи являются элементами таблицы. Они соответствуют строкам таблицы. Число записей в таблице может быть произвольным.

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

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

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

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

Список ключевых полей, задающих порядок записей, называется индексом. Индекс задает порядок следования записей в таблице. Помимо .dbf файлов имеются индексные файлы .mdx или .ndx , в которых записываются позиции головок для быстрого поиска данных на диске.

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

Связи между таблицами БД

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

один к одному (1:1), одному объекту А соответствует один объект В и наоборот, например, соответствие между множеством автомобилей и множеством номерных знаков;

один ко многим (1:М), одному объекту А соответствует много объектов В, но каждый объект В связан не более чем с одним экземпляром объекта А, например, отношение покупатель - покупки;

многие ко многим (М:М), одному объекту А соответствует много объектов В и наоборот, например, фабрики и товары

С одной стороны, фабрика может производить несколько видов товаров, а с другой, один вид товара может производиться несколькими фабриками.

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

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

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

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

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

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

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

Язык запросов SQL (Structured Query Language) реализован в целом ряде популярных СУБД для различных типов ЭВМ. Многие СУБД могут подключаться к SQL – подсистемам с помощью ODBC или драйверов, являющихся их частью. Некоторые программные продукты совместимы с SQL при обработке интерактивных запросов на получение данных, находящихся на сервере или на рабочем месте. С помощью языка SQL можно напрямую управлять базами данных Access.

Команды, предоставляемые в распоряжение пользователю СУБД Access

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

  • команды для работы с файлами;

  • команды редактирования;

  • команды форматирования;

  • команды для работы с окнами;

  • команды для работы в основных режимах СУБД (таблица, форма, запрос, отчет);

  • получение справочной информации.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]