Программирование на стороне сервера

Программирование на стороне сервера

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

Хранимые процедуры

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

Хранимые процедуры могут включать другие хранимые процедуры и могут быть рекурсивными. Все выполнение хранимой процедуры, включая выбор набора данных из процедур и внутренние вызовы других процедур, находится под управлением одной транзакции, которая вызвала процедуру. Соответственно, вся работа, выполненная при вызове хранимой процедуры, может быть отменена при откате клиентом этой транзакции.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

5.3. Балансировка на стороне клиента

Из книги автора

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


Балансировка на стороне клиента

Из книги автора

Балансировка на стороне клиента Существует еще один подход для распределения нагрузки на серверы от современных веб-приложений, который не нуждается в дополнительном балансирующем оборудовании, и отказ одного из серверов происходит гораздо более незаметно для


Преимущества балансировки на стороне клиента

Из книги автора

Преимущества балансировки на стороне клиента Итак, как только мы обговорили технику, позволяющую осуществлять кроссдоменные вызовы, можно обсудить, собственно, как работает сам балансировщик и как он удовлетворяет требованиям, изложенным в начале


Оптимизатор на стороне клиента с печеньками

Из книги автора

Оптимизатор на стороне клиента с печеньками Справедливость, как поэтически называют закон сохранения энергии, в мире бизнеса приобретает причудливые формы. Было время, когда SEO — агентства с легким гурманским причмокиванием высасывали из клиентов бюджеты. Теперь


Средства синхронизации идентификаторов пользователей, выполняемые на стороне сервера

Из книги автора

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


Указание LPRng-сервера на стороне клиента

Из книги автора

Указание LPRng-сервера на стороне клиента Файл /etc/printcap в системе LPRng используется аналогично одноименному файлу в системе BSD LPD. В частности, опции lp, rm и rp, которые обсуждались выше в данной главе, применимы как в BSD LPD, так и в LPRng. Большинство других опций также может


Определение сервера CUPS на стороне клиента

Из книги автора

Определение сервера CUPS на стороне клиента Для добавления принтеров к системе CUPS используется утилита lpadmin, вызываемая из командной строки или доступная посредством специального графического интерфейса. Кроме того, эта задача может решаться с помощью Web-броузера; для


Хранение писем на стороне клиента и на стороне сервера

Из книги автора

Хранение писем на стороне клиента и на стороне сервера Как было сказано ранее, одна из функций сервера, реализующего протокол получения почты, состоит в том, чтобы хранить сообщения до тех пор, пока пользователь не обратится за ними. Когда клиент-программа обращается к


Настраиваем входящее соединение на стороне сервера

Из книги автора

Настраиваем входящее соединение на стороне сервера Входящее соединение будем настраивать в операционной системе Windows XP, поскольку в Windows 2000 это сделать невозможно. Буквально по шагам это выглядит так:1. На рабочем столе компьютера щелкаем правой кнопкой мыши на ярлыке


Настройка параметров лизинга на стороне сервера

Из книги автора

Настройка параметров лизинга на стороне сервера Вы только видели, что переопределение метода InitializeLifetimeServices() MBR-типом позволяет изменить текущие параметры лизинга во время активизации типа. Но что делать, если удаленному типу нужно изменить параметры лизинга после


Настройка параметров лизинга на стороне клиента

Из книги автора

Настройка параметров лизинга на стороне клиента В дополнение к указанным возможностям ILease, домен приложения клиента тоже может регулировать текущие параметры лизинга CAO-типов и WKD-сингле-тов, с которыми осуществляется удаленное взаимодействие. Для этого клиент должен


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

Из книги автора

Представление типов на стороне клиента Когда клиент устанавливает ссыпку на Web-сервис, предоставляющий доступ к пользовательским типам, файл класса агента получает определения для каждого отрытого пользовательского типа. Так, если вы посмотрите на представление


10.3.1. Набор символов и объединение на стороне сервера

Из книги автора

10.3.1. Набор символов и объединение на стороне сервера Сервер MySQL имеет набор символов и объединение сервера. Они могут быть установлены при запуске и изменены во время выполнения.Первоначально, набор символов и объединение зависят от параметров, которые Вы используете,


XSLT на стороне сервера

Из книги автора

XSLT на стороне сервера Применение XSLT на стороне сервера (рис. 2.5) совершенно незаметно для клиента — он, как и раньше, в ответ на свой запрос получает HTML или документ в другом требуемом формате. В данном случае связка XML+XSLT является дополнительным звеном, дополнительным


XSLT на стороне клиента

Из книги автора

XSLT на стороне клиента Идея использования XSLT на стороне клиента (рис. 2.6) заключается в том, чтобы отдавать клиенту отдельно нужные ему данные и отдельно преобразование, которое будет создавать для этих данных требуемое представление (например — HTML-страницу). Четкое


13-Я КОМНАТА: Встань, Маруська, в стороне?

Из книги автора

13-Я КОМНАТА: Встань, Маруська, в стороне? Автор: Владимир ГуриевНа днях случилось знаковое, на мой взгляд, событие, которое не успело попасть в новостной блок, - редакция PC Magazine объявила о переходе на электронную систему распространения. В переводе с канцелярского на