Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТВ. ТЕБЕНЬКОВ Е.С. БД.docx
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
386.6 Кб
Скачать

4 Вариант – сервер приложений.

С помощью протокола API передается информация о том какие программы и в какой последовательности нужно выполнять.

В технологии клиент-сервер есть специальные активные программы, которые называют триггерами.

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

  • Create trigger имя событие_действие - создание триггера;

  • Drop trigger - удаление.

Запись события:

  • Insеrt on имя_таблицы – наступает тогда, когда в таблицу заносится информация;

  • Delete on таблица – наступает при удалении из таблицы;

  • Update of список_полей on имя_таблицы - возникает при изменении заданных полей в указанной таблице.

Действия бывают трех видов:

  • Before (оператор) – перед добавлением, удалением, изменением;

  • Foreach row (оператор) – для каждой строки таблицы;

  • After (оператор) после добавления, удаления, изменения.

В триггерах есть возможность сослаться на одно и тоже поле до изменения и после:

  • Referencing old as имя – запомнить до изменения;

  • Referencing new as имя – запомнить после изменения;

When (условие)(оператор) – задает дополнительные условия для работы с триггерами.

Пример.

Изменить статус поставщиков только в том случае, если новый статус не меньше старого и не больше 100%.

Нужно создать триггер, который будет обновлять статус:

Create trigger Sstat

Update of статус on Поставщики

Referencing old as c1

Referencing new as c2

Foreach row

When ( с1.статус >=с2.статус)

Execute procedure error (с1.статус,с2.статус)

When (с2.статус>100%)

Execute procedure error1 (с1.статус,с2.статус)

Модель сервера базы данных

В архитектуре клиент-сервер для обработки данных выделяется специальное ядро - так называемый сервер баз данных, который принимает на себя функции обработки запросов пользователей, именуемых теперь клиентами. Сервер баз данных представляет собой программу, выполняющуюся, как правило, на мощном компьютере. Приложения-клиенты посылают с рабочих станций запросы на выборку (вставку, обновление, удаление) данных. При этом сервер выполняет всю “грязную” работу по отбору данных, отправляя клиенту только требуемую “выжимкуТакой подход обеспечивает решение трех важных задач:

  • уменьшение нагрузки на сеть

  • уменьшение требований к компьютерам-клиентам

  • повышение надежности и сохранение логической целостности базы данных.

      Модель сервера приложений.       Использование этой модели позволяет разгрузить рабочие станции, то есть перейти к "тонким" клиентам. Конечно, сервер приложений можно организовать и с помощью хранимых процедур. Но для реализации хранимых процедур используют языки высокого уровня (например, в Oracle - язык PL/SQL ), поэтому программы получаются ресурсоёмкими. Причём возможности этих языков ограничены: с их помощью нельзя организовать обработку данных на уровне битов. Хранимые процедуры также не поддерживают распределённые приложения, т. е. они не обеспечивают автоматический запуск требуемой программы на другом сервере.