Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 2 Введение в базы и банки данных.doc
Скачиваний:
6
Добавлен:
16.09.2019
Размер:
603.65 Кб
Скачать

3. Независимость от данных

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

  • логическая независимость – полная защищенность внешних схем от изменений, вносимых в концептуальную схему

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

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

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

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

Примеры коммерческих СУБД: Oracle, DB2, SQL Server, Access (СУБД для ПК), FoxPro, Paradox,…

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

4. Языки баз данных

2.5.1. Язык определения данных ddl

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

2.5.2. Язык управления данными – dml

Язык DML содержит операторы для манипулирования данными:

  • вставка в БД новых сведений

  • модификация сведений, хранимых в базе

  • извлечение сведений, содержащихся вБД

  • удаление сведений из базы

Язык DML называют также языком запросов.

Существуют два типа языков DML: процедурный и непроцедурный.

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

С помощью непроцедурного языка DML пользователь указывает какие данные ему нужны, без указания способа их получения. СУБД транслирует выражение языка DML в процедуру работы с записями. Реляционные СУБД обычно поддержку непроцедурных языков. Чаще всего это язык структурированных запросов SQL (Structured Query Language) и язык запросов по образцу QBE (Query-by-Example). Работать с непроцедурными языками проще, так как не нужно знать физическую модель данных.

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

2.5.3. Генераторы форм

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

2.5.4. Генераторы отчетов

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

2.5.5. Генераторы графического представления данных

Этот генератор представляет собой инструмент, предназначенный для извлечения данных из базы и отображения их в виде диаграмм (круговых, графиков, гистограмм)

2.5.6. Генераторы приложений

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