Базы данных. Концепция баз данных, реляционная модель данных, языки SQL и XML. Токмаков Г.П. - 120 стр.

UptoLike

Составители: 

120
блоке
PL/pgSQL выполняются за одну операцию вместо обычной обработки каж-
дой команды.
6.1.1. С
ТРУКТУРА ЯЗЫКА
Язык PL/pgSQL имеет относительно простую структуру, что объясняется в
основном тем, что каждый логически обособленный фрагмент кода существует
в виде функции. Хотя на первый взгляд
PL/pgSQL мало похож на другие языки
программирования (такие, как язык
С), сходство все же существует: логические
фрагменты создаются и выполняются в виде функций, все переменные обяза-
тельно объявляются перед использованием, функции получают аргументы при
вызове и возвращают некоторое значение в конце своей работы.
Регистр символов в именах функций
PL/pgSQL не учитывается. В ключевых
словах и идентификаторах допускается использование произвольных комбина-
ций символов верхнего и нижнего регистров. Также обратите внимание на час-
тое удвоение апострофов во многих местах этой главы
всюду, где обычно ис-
пользуются одиночные апострофы. Удвоение экранирует апострофы в опреде-
лениях функций, поскольку определение функции в действительности пред-
ставляет собой большую строковую константу в команде
CREATE FUNCTION.
В этом разделе рассматривается блочная структура программ
PL/pgSQL,
комментарии, структура выражений
PL/pgSQL и использование команд.
Блоки
Программы
PL/pgSQL состоят из блоков. Такой метод организации про-
граммного кода обычно называется блочной структурой.
Команда
CREATE FUNCTION. Функция (или хранимая процедура) вводится с
помощью команды
SQL CREATE FUNCTION, которая используются для определения
функций
PL/pgSQL в базах данных PostgreSQL. Команда CREATE FUNCTION опре-
деляет имя функции, типы ее аргументов и возвращаемого значения.
Блок
DECLARE. Основной блок функции начинается с секции объявлений.
Все переменные объявляются (а также могут инициализироваться значениями
по умолчанию) в секции объявлений программного блока. В объявлении указы-
вается имя и тип переменной. Секция объявлений обозначается ключевым сло-
вом
DECLARE, а каждое объявление завершается символом точки с запятой (;).
Основной программный блок. После объявления переменных следует
ключевое слово
BEGIN, обозначающее начало основного программного блока. За
ключевым словом
BEGIN находятся команды, входящие в блок. Конец про-
граммного блока обозначается ключевым словом
END.
Возвращаемое значение. Основной блок функции
PL/pgSQL должен вернуть
значение заданного типа, а все вложенные блоки (блоки, начинающиеся внутри
других блоков) должны быть завершены до достижения ключевого слова
END.
Структура программного блока
PL/pgSQL приведена в листинге 6.1.
Листинг 6.1. Структура программного блока PL/pgSQL
CREATEFUNCTIONидентификатор(аргументы)RETURNSтипAS'
DECLARE
объявление:[...]