Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Обработка информации средствами СУБД.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
3.33 Mб
Скачать

Тема 1. Банки и базы данных. Субд

Банки и базы данных. Основные функции

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

Основными функциями БнД являются:

  • хранение информации и организация ее защиты;

  • периодическое изменение хранимых данных (обновление, добавление, удаление);

  • поиск и отбор данных по запросам пользователей и прикладных программ;

  • обработка найденных данных и вывод результатов в заданной форме.

Хранимая информация размещается в базах данных (БД).

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

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

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

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

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

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

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

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

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

Обеспечение банков данных

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

Он включает:

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

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

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

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

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

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

Логическая организация БД

В настоящее время известны три логические модели БД:

  • иерархическая;

  • сетевая;

  • реляционная.

Иерархическая модель данных представляет собой дерево графа, в вершинах которого располагаются записи. Между записями существуют отношения предок/потомок, связывающие каждый конкретный узел с его составляющими. Каждая из вершин связана только с одной вершиной вышележащего уровня. Поиск данных в такой структуре выполняется всегда по одной из ветвей, начиная с корневого элемента. Так, для поиска и выборки одного или нескольких экземпляров записи типа «Студент», необходимо указать корневой элемент «Факультет» и элементы «Курс», «Группа» (рисунок 1.1).

Р ис.1.1. Иерархическая модель данных

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

Если структура данных оказывалась сложнее, чем традиционная иерархия, то простота организации иерархической базы данных становилась ее недостатком. Например, если рассмотреть работу торговой компании, то один заказ может участвовать в нескольких отношениях предок/потомок: с заказчиком, с менеджером или торговой точкой, отпустившей товар, а также с самим товаром. Однако иерархия допускает наличие только одного отношения между ее записями. В связи с этим для таких приложений была разработана сетевая модель данных, допускавшая множественные отношения типа предок/потомок.

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

Р ис. 1.2. Сетевая модель данных

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

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

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

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

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

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

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

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

Таблица 1.1

Преподаватель

Таб.№

Ф.И.О.

Уч.степень

Уч.звание

Код кафедры

301

Иванов П.П.

Д-р тех. наук

Профессор

01

302

Иванов Ф.П.

Канд. техн. наук

Доцент

01

303

Петров В.В.

Канд. техн. наук

Доцент

01

304

Тимофеев Т.Т.

Канд. техн. наук

Доцент

02

305

Павлов П.П.

Д-р тех. наук

Доцент

02

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

Различают три вида связей между таблицами:

  • «один-к-одному»;

  • «один-ко-многим»;

  • «многие-ко-многим».

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

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

ФИО

Паспорт

Зачетная

книжка

Зачетная

книжка

Физика

Математика

Логистика

Иванов И.И.

МР1234567

74060301

74060301

8

7

8

Петров П.П.

МР2345678

74060302

74060302

7

6

9

Седов С.С.

МР3456789

74060303

74060303

8

9

7

. . .

. . .

. . .

. . .

. . .

. . .

. . .

Рис. 1.3. Связь «один-к-одному»

Связь «один-ко-многим» является самой распространенной в реляционных базах данных.

На схеме данных (рисунок 1.4) ключевые поля соединены линиями связи, причем, с одной стороны эти линии маркированы значком 1 (один), а с другой стороны – значком ∞ (бесконечность). Это графический способ изображения связи «один-ко-многим».

Рис. 1.4. Схема данных

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

К числу наиболее распространенных реляционных СУБД относятся dBASE, FoxBASE, FoxPro, Clipper, Clarion, Paradox и др.

Вопросы для самоконтроля

  1. Что такое банк данных? Перечислите основные функции банков данных.

  2. Что такое база данных? Из чего она состоит?

  3. Что такое СУБД?

  4. Что входит в состав СУБД?

  5. Какие комплексы средств включает обеспечение банков данных?

  6. Перечислите виды логических моделей баз данных и назовите их основные достоинства и недостатки.

  7. Что такое первичный ключ? Для чего он используется?

  8. Что такое внешний ключ?

  9. Назовите виды связей между таблицами и дайте им краткую характеристику.