Глава 40. PL/pgSQL — процедурный язык SQL

Содержание
40.1. Обзор
40.1.1. Преимущества использования PL/pgSQL
40.1.2. Поддерживаемые типы данных аргументов и возвращаемых значений
40.2. Структура PL/pgSQL
40.3. Объявления
40.3.1. Объявление параметров функции
40.3.2. ALIAS
40.3.3. Наследование типов данных
40.3.4. Строковый тип
40.3.5. Тип record
40.3.6. Упорядочение переменных PL/pgSQL
40.4. Выражения
40.5. Основные операторы
40.5.1. Присваивания
40.5.2. Выполнение команды, не возвращающей результат
40.5.3. Выполнение запроса, возвращающего одну строку
40.5.4. Выполнение динамически формируемых команд
40.5.5. Статус выполнения команды
40.5.6. Не делать ничего
40.6. Управляющие структуры
40.6.1. Команды для возврата значения из функции
40.6.2. Условные операторы
40.6.3. Простые циклы
40.6.4. Цикл по результатам запроса
40.6.5. Цикл по элементам массива
40.6.6. Обработка ошибок
40.6.7. Получение информации о выполнении в текущий момент
40.7. Курсоры
40.7.1. Объявление курсорных переменных
40.7.2. Открытие курсора
40.7.3. Использование курсоров
40.7.4. Обработка курсора в цикле
40.8. Сообщения и ошибки
40.9. Триггерные процедуры
40.9.1. Триггеры на изменение данных
40.9.2. Триггеры событий
40.10. PL/pgSQL изнутри
40.10.1. Подстановка переменных
40.10.2. Кеширование плана
40.11. Советы по разработке на PL/pgSQL
40.11.1. Обработка кавычек
40.11.2. Дополнительные проверки во время компиляции
40.12. Портирование из Oracle PL/SQL
40.12.1. Примеры портирования
40.12.2. На что ещё обратить внимание
40.12.3. Приложение