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

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

Глава 40. PL/pgSQLSQL Процедурный Язык

Оглавление

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. Типы записей
40.3.6. Сортировка переменных PL/pgSQL приложения
40.4. Выражения
40.5. Основные операторы
40.5.1. Назначение
40.5.2. Выполнение SQL-команд
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.6.8. Перехват ошибок
40.6.9. Получение информации о месте выполнения
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. Функции триггеров
40.10.1. Триггеры на изменение данных
40.10.2. Триггеры на события
40.11. PL/pgSQL под капотом
40.11.1. Подстановка переменных
40.11.2. Кэширование плана
40.12. Советы по разработке в PL/pgSQL
40.12.1. Обработка кавычек
40.12.2. Дополнительные проверки времени компиляции и времени выполнения
40.13. Перенос из PL/SQL Oracle
40.13.1. Примеры портирования
40.13.2. Другие вещи, на которые следует обратить внимание
40.13.3. Приложение