- •Конспект лекций
- •Волгоград 2015 Рекомендуемая литература
- •Основные сведения
- •Вопрос1! Архитектура бд. Принципы физической и логической независимости уровней.
- •Вопрос2! Процесс прохождения пользовательского запроса
- •Вопрос3! Этапы жизненного цикла базы данных
- •Вопрос4! Пользователи баз (банков) данных
- •Вопрос5! Классификация моделей данных
- •Инфологическое проектирование вопрос6! Этап 1. Системный анализ предметной области
- •Вопрос7! Этап 2. Построение инфологической модели
- •Вопрос8! case - нотация er-диаграммы
- •Даталогические модели
- •2 Среди фактографических моделей можно выделить
- •Вопрос11! Язык описания данных иерархической модели
- •Внешние модели
- •Рассмотрим пример иерархической бд.
- •Вопрос12! Язык манипулирования данными в иерархических базах данных
- •Операторы поиска данных
- •Операторы поиска данных с возможностью модификации
- •Операторы модификации данных
- •Сетевая модель данных
- •Вопрос13! Сетевая модель данных. Одна из первых сетевых моделей данных, разработанная группой codasyl (Conference of Data System Languages), была предложена в 1969 г. И развивалась до 80-х годов.
- •Вопрос14! Язык описания данных в сетевой модели
- •Вопрос15! Язык манипулирования данными в сетевой модели
- •Теоретико-множественные модели
- •Вопрос17! связи между данными
- •Вопрос18! Теоретико-множественные операции реляционной алгебры
- •Вопрос19! Специальные операции реляционной алгебры
- •Перспективы развития бд и субд
- •Вопрос20! Многомерная модель
- •Вопрос21! Объектно-ориентированные базы данных (oodm)
- •Вопрос22! Диаграмма классов uml
- •Имя класса
- •Вопрос23! Объектная модель данных ole db. Основные понятия.
Внешние модели
При работе с иерархической моделью каждая программа, пользователь или приложение определяет свою внешнюю модель. Внешняя модель представляет собой совокупность поддеревьев для физических баз данных, с которыми работает данный пользователь. Каждый подграф внешней модели в обязательном порядке должен содержать корневой тип сегмента соответствующей физической базы данных концептуальной модели.
Представление внешней модели называется логической базой данных и определяется совокупностью блоков связи данного приложения с физическими БД, входящими в концептуальную схему БД.
Блок связи — PCB, program communication block — описывает связь с одной физической БД по следующим правилам:
DBD NAME = < имя логической БД (подсхемы)> ,
ACCESS = LOGICAL
DATA SET = LOGICAL.
SEGM NAME = <имя сегмента в подсхеме>,
PARENT =<имя родительского сегмента в подсхеме>,
SOURCE =(Имя соответствующего сегмента ФБД, имя ФБД)
...
DBDGEN
FINISH
END
Совокупность блоков PCB образует полное внешнее представление данного приложения, называемое "блоком спецификации программ" ( PSB, program specification block ).
Рассмотрим пример иерархической бд.
Наша организация занимается производством и продажей компьютеров, в рамках производства мы комплектуем компьютеры из готовых деталей по индивидуальным заказам. У нас существует несколько базовых моделей, которые мы продаем без предварительных заказов по наличию на складе. В организации существуют несколько филиалов (рис.16) и несколько складов, на которых хранятся комплектующие. Нам необходимо вести учет продаваемой продукции.
Рис. 16. Физическая БД "Филиалы"
Какие задачи нам надо решать в ходе разработки приложения?
При приеме заказа мы должны выяснить, какую модель заказывает заказчик: типичную или индивидуальную комплектацию.
Если заказывается типичная модель, то выясняется, какая модель и есть ли она в наличии, если модель есть, то надо уменьшить количество компьютеров данной модели в данном филиале на покупаемое количество. На этом будем считать заказ выполненным, однако при оформлении заказа может потребоваться задание полной спецификации покупаемого изделия.
Если заказывается индивидуальная модель, то требуется описать весь состав новой модели.
Для того чтобы можно было бы принимать заказы на индивидуальные модели, нам понадобится информация о наличии конкретных деталей на складе, в этом случае нам необходимо второе дерево — Склады (см.рис. 17).
Рис. 17. Физическая модель "Склады"
Вопрос12! Язык манипулирования данными в иерархических базах данных
Для доступа к базе данных у пользователя должна быть сформирована специальная среда окружения, поддерживающая в явном виде имеющиеся навигационные операции. Для этого в ней должны храниться:
шаблоны всех записей логических баз данных, доступных пользователю;
указатели на текущий экземпляр сегмента данного типа — для всех типов сегментов.
Язык манипулирования данными в иерархической модели поддерживает в явном виде навигационные операции. Эти операции связаны с перемещением указателя, который определяет текущий экземпляр конкретного сегмента.
Все операторы в языке манипулирования данными можно разделить на 3 группы. Первую группу составляют операторы поиска данных.