Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD_KL_2010_14.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
28.97 Mб
Скачать

Комментарии

В PL/pgSQL поддерживаются два вида комментариев, у которых имеются аналоги в других языках программирования: однострочные и блочные (многострочные) комментарии.

Однострочные комментарии начинаются с двух дефисов (--) и не имеют специального завершителя. Модуль лексического разбоpa интерпретирует все символы, следующие после двух дефисов, как часть комментария. Пример использования однострочных комментариев приведен в листинге 6.2.

Листинг 6.2. Однострочный комментарий

-- Это будет интерпретировано как однострочный комметарий.

Блочные комментарии знакомы каждому, кто когда-либо программировал на других языках. Блочный комментарий начинается с последовательности символов /* и завершается последовательностью */. Они могут распространяться на несколько строк, при этом весь текст между начальной и завершающей парой /* и */ считается комментарием. Пример блочного комментария приведен в листинге 6.3.

Листинг 6.3. Блочный комментарий

/*

* Здесь размещен

* блочный комментарий. */

ПРИМЕЧАНИЕ Хотя блочные комментарии могут содержать вложенные однострочные комментарии, вложение блочных комментариев в другие блочные комментарии не допускается.

6.1.2.Команды и выражения

Программы PL/pgSQL, как и в большинстве языков программирования, состоят из команд и выражений. Вероятно, вам довольно часто придется пользоваться выражениями, потому что они крайне важны для некоторых типов манипуляций с данными. Общие концепции команд и выражений одинаковы (или, по крайней мере, очень похожи) во всех языках. Если вы прежде работали с другими языками программирования, то наверняка знакомы с этими концепциями.

Команды

Команда выполняет некоторое действие в коде PL/pgSQL  например, присваивает значение переменной или выполняет запрос. Последовательность команд в программных блоках PL/pg­SQL определяет порядок выполнения действий в этом блоке. Большая часть команд обычно размещается в основной части блока, находящейся между ключевыми словами BEGIN и END. Некоторые команды также могут присутствовать в секции объявлений (после ключевого слова DECLARE), но они всего лишь объявляют и/или инициализируют переменные, используемые в программном блоке.

Каждая команда завершается символом точки с запятой (;). В этом прослеживается сходство с языком SQL, в котором команды завершаются этим же символом. Почти вся оставшаяся часть этой главы посвящена типам команд, их использованию и основным задачам, решаемым при помощи команд в PL/pgSQL.

Выражения

Выражения представляют собой условную запись последовательности операций, результат которой принадлежит одному из базовых типов данных PostgreSQL. В листинге 6.4 приведена простая функция PL/pgSQL, возвращающая результат простого выражения, а в листинге 6.5 продемонстрирован результат вызова этой функции в psql.

Листинг 6.4. Использование выражений

CREATE FUNCTION a_function () RETURNS int4 AS '

DECLARE

an_integer int4;

BEGIN

an_integer := 10 * 10;

return an_integer;

END;

' LANGUAGE 'plpgsql';

Листинг 6.5. Результат вызова функции a_function()

booktown=# SELECT a_function() AS output;

output

100

(1 row)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]