Процедурный язык (PSQL)
Процедурный язык (PSQL)
Стандарт не описывает возможности процедурного языка, поскольку в принципе предполагает, что общие задачи программирования будут решены с использованием языка программирования. Не существует спецификаций для конструкций языка по манипулированию, вычислению или программному созданию данных внутри системы управления базами данных.
Те реляционные СУБД, которые поддерживают программирование на сервере, обычно предоставляют форматы и синтаксис, подобные операторам SQL, для расширения SQL. Каждый разработчик СУБД свободен предоставлять свои собственные варианты таких конструкций. Обычно такие модули в базе данных называются хранимыми процедурами.
Firebird предоставляет такие конструкции в виде процедурного языка (иногда называемого PSQL), который является набором расширений SQL, используемых программистами вместе с вариантом языка ESQL для написания исходных кодов для хранимых процедур и триггеров. Расширения PSQL включают управление потоком выполнения, условные выражения и средства обработки ошибок. Язык включает уникальную возможность генерации многострочных выходных наборов, к которым может быть осуществлен прямой доступ с использованием операторов SELECT.
Из языка исключены некоторые конструкции SQL, в частности все операторы DDL. При этом в Firebird 1.5 и выше в PSQL поддерживается синтаксис EXECUTE STATEMENT для выполнения команд DSQL, включающих некоторые операторы DDL.
PSQL для хранимых процедур и триггеров подробно описывается в части VII.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Процедурный вопрос
Процедурный вопрос Новый домен первого уровня обычно вызывает живой интерес у пользователей, которые планируют зарегистрировать в нем имена. При этом имена в новом домене – ресурс ограниченный, требующий тщательного распределения. В ситуации, когда о планируемом
1.3.3. Язык запросов
1.3.3. Язык запросов Для того чтобы Яндекс корректно понимал запросы, состоящие из нескольких слов, был разработан специальный язык запросов. Отдельные его элементы мы уже рассмотрели — это и специальные символы, используемые в обычном поиске, и дополнительные параметры,
Выражения в PSQL
Выражения в PSQL Процедурный язык для триггеров и хранимых процедур PSQL широко использует выражения для управления потоком выполнения. PSQL предоставляет структуры IF(<предикат>) THEN и WHILE(<предикат>) DO. Любой предикат, который может быть использован в условии поиска, также
Язык для транзакций
Язык для транзакций Важно обратиться к средствам реализации транзакций в Firebird. До сих пор некоторые связанные с транзакциями особенности вовсе не реализованы в динамическом SQL, а только через API. Среди небольшого количества связанных с транзакциями операторов SQL и
"Точки сохранения" в PSQL
"Точки сохранения" в PSQL Добавление возможностей создания пользовательских точек сохранения в Firebird 1.5 позволяет приложению управлять область действия отката транзакции. В PSQL всегда была возможность обработки исключений. Подробности см. в главе
Расширения языка PSQL
Расширения языка PSQL Расширения языка PSQL включают следующие языковые элементы:* операторы BEGIN и END для выделения блоков кода, которые могут быть вложенными;* операторы DECLARE VARIABLE для объявления локальных переменных;* конструкция FOR SELECT <спецификация-выбора> INTO
Ограничения PSQL
Ограничения PSQL Существуют некоторые ограничения языка для кодов в модулях PSQL.* Операторы, использующие подмножество языка определения данных (DDL) SQL Firebird, не разрешены в PSQL[111].* Операторы управления транзакциями недопустимы в PSQL, потому что хранимые процедуры и триггеры
Типы операторов, не поддерживаемых в PSQL
Типы операторов, не поддерживаемых в PSQL Следующие типы операторов не поддерживаются в триггерах и хранимых процедурах:* операторы языка определения данных (т. е. операторы, начинающиеся с ключевых слов CREATE, RECREATE, ALTER или DROP; SET GENERATOR; DECLARE EXTERNAL FUNCTION: DECLARE FILTER);* операторы
ГЛАВА 29. Разработка модулей PSQL.
ГЛАВА 29. Разработка модулей PSQL. Хранимые процедуры и триггеры объявляются при помощи операторов CREATE PROCEDURE и CREATE TRIGGER соответственно. Каждый из этих сложных операторов состоит из заголовка и
Курсоры в PSQL
Курсоры в PSQL Курсоры состоят из трех основных элементов:* набора строк, определенных выражением SELECT;* указателя, который перемещается через набор от первой строки к последней, изолируя строку для некоторого вида деятельности;* набора переменных- определенных как
Особенности PSQL для триггеров
Особенности PSQL для триггеров Два особых элемента PSQL доступны триггерам: логические контекстные переменные событий INSERTING, UPDATING и DELETING и контекстные переменные NEW и OLD. Переменные события В Firebird появляются логические контекстные переменные INSERTING, UPDATING и DELETING, чтобы
4.1. Язык UML
4.1. Язык UML Классический структурный подход к созданию ИС предполагает последовательную реализацию этапов анализа, проектирования, создания модулей, объединения модулей в единую систему, тестирования и внедрения. Применение CASE-технологий и CASE-средств, подобных ERwin и BPwin,
1.5. Декларативный и процедурный смысл программ
1.5. Декларативный и процедурный смысл программ До сих пор во всех наших примерах всегда можно было понять результаты работы программы, точно не зная, как система в действительности их нашла. Поэтому стоит различать два уровня смысла программы на Прологе, а
Процедурный тип
Процедурный тип Тип, предназначенный для хранения ссылок на процедуры или функции, называется процедурным, а переменная такого типа - процедурной переменной. Основное назначение процедурных переменных - хранение и косвенный вызов действий (функций) в ходе выполнения