Прикладные средства

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

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

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

1) средства разработчика, реализованные в СУБД. Это языки программирования СУБД (например, XBase, диалектом которого является язык FoxPro), трансляторы, отладчики, утилиты работы с БД, библиотеки и наборы компонент, реализующие типовые функции и элементы интерфейса.

2) дополнительные средства универсальных языков программирования, расширяющие возможности языка средствами работы с БД (например, набор компонентов работы с БД для С++). Сюда же можно отнести стандартизированные средства доступа с БД, также как ODBC, DAO, ADO, BDE, а также внешние программные интерфейсы (API), предоставляемые большинством разработчиков СУБД.

3) интегрированные средства разработки, предлагаемые независимыми поставщиками. Такие средства, в отличие от средств СУБД, позволяют, как правило, работать с большим числом распространенных форматов БД. Примером независимого средства разработки является пакет Power Builder, позволяющий создавать приложения для работы с большинством форматов распространенных серверных и некоторых персональных СУБД. Также получили распространение C++ Builder, Delphy.

При выборе средств разработки следует учитывать:

1) поддерживаемую рассматриваемыми средствами модель БД и модель обработки;

2) развитость предоставляемого инструментария;

3) совместимость получаемых результатов с имеющимися разработками;

4) наличие рассматриваемых средств и их стоимость при отсутствии;

5) наличие опыта работы с рассматриваемыми средствами.

При работе с БД используются различные технологии доступа:

- низкий уровень (API),

- средний уровень (ODBC),

- высокий уровень (BDE, IBExpress, ADO).

СУБД

Основным средством работы с данными является СУБД.

Основные задачи СУБД:

1) создание и модификация БД

2) ввод и актуализация данных

3) развитие БД

4) поддержка разработки приложений

5) поддержка многопользовательского доступа

6) поддержка ограничений целостности

7) поддержка контроля доступа

8) поддержка резервирования и восстановления

Наиболее распространенными СУБД являются:

1) Персональные системы:

─ MS Access: средство для конечного пользователя

─ VFP: средство для разработчика

─ Семейство X-Base (FoxPro, DBase), Paradox, Clarion

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

Прикладные средства - №1 - открытая онлайн библиотека

2) Серверные системы:

─ MS SQL Server

─ Oracle

─ InterBase

─ My SQL: быстрая, бесплатная, сильно урезана

─ DB: очень старая

Для серверных систем характерны: наличие клиентской и серверной частей, потоков обмена в SQL-серверах.

Прикладные средства - №2 - открытая онлайн библиотека

Состав СУБД:

- ядро;

- интерфейсы пользователя;

- средства обмена с приложениями;

- средства разработки;

- утилиты обслуживания.

Общая схема обработки обращений в СУБД:

Прикладные средства - №3 - открытая онлайн библиотека

1) Контроль доступа: если команда разрешена, то она принимается к обработке, иначе сообщение о нарушении прав доступа

2) Процессор команд: анализ команды, перенаправление на обработку.

3) Контроллер целостности: проверяются ограничения целостности для команд ввода модификаций.

4) Обработчик запросов: основная часть – оптимизатор запросов, определяет возможные планы исполнения запросов, выбирает наилучший (он может из одной команды сделать несколько).

5) Планировщик: из параллельно поступающих потоков информации формирует единый поток.

6) Контроллер данных: обеспечивает выполнение операций с данными, при выполнении происходит обмен с диском через буфера, при выполнении взаимодействует с файловой системой.

7) Контроллер транзакций: хранит историю и состояние транзакций, управляет их поведением.

Наиболее применяемые СУБД (2002г.):

- MS SQL Server (32,3%),

- Oracle (16,1%),

- InterBase (12,6%),

- MySQL (10,2),

- MS Access (6,6%),

- Visual FoxPro (4,5%).

10. Язык SQL

Стандартизированный язык работы с данными через СУБД реализован в разном объеме во всех реляционных СУБД. Назначение – определение структуры данных, актуализация данных, выборка данных, исполнение служебных функций.

История создания:

Прототип SQL обнародован в 1974 году, назывался он SEQUEL. (Структурированный (S) английский (E) язык (L) формулирования запросов (QUE)). Начало коммерческой реализации – основной вариант в системе Oracle.

В 1986 – стандартизация языка в США, под аббревиатурой SQL, в 1987 – международный стандарт, под названием SQL1 или SQL-87. 1989 год – вторая редакция SQL1 или SQL-89. В первом стандарте определены основные операторы языка

В 1992 – разработан SQL2 или SQL-92. Полный реляционный стандарт, стандартизация работы с метаданными по аналогии с работой с пользовательскими данными (если ранее стандартизировалась работа с пользовательскими таблицами, теперь пошли далее, раньше данные служебные, описание БД, генераторы и триггеры, хранились, как попало, теперь и служебную данные хранятся как таблицы, так же стандартизовано, в “служебных таблицах”).

С появлением объектно-ориентированного программирования и объектно-ориентированных БД, стали думать над расширением стандарта SQL2. В это время не было, какой то одной организации, которая диктовала бы стандарт, все создавали свои стандарты. И в 1999 году создан стандарт SQL3 (SQL-99). Он собрал только самую вершину, того, что было общим. Стандарт превратился в рекомендацию. Весь стандарт разделили на уровни – начальный, стандартный и полный. Обычно в СУБД поддерживается чуть больше начального уровня.

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

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

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