Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика и ВТ Брукшир.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
5.07 Mб
Скачать

9.2.3Модели баз данных

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

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

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

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

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

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

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

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