кодесурса
«MySQL

Учебник по PL / pgSQL

script1adsense2code
script1adsense3code

Вступление

PL / pgSQL (процедурный язык / PostgreSQL) - это загружаемый процедурный язык программирования, поддерживаемый PostgreSQL. PL / pgSQL, как полнофункциональный язык программирования, обеспечивает гораздо больший процедурный контроль, чем SQL, включая возможность использования циклов и других структур управления. Функции, созданные на языке PL / pgSQL, можно вызывать из оператора SQL или как действие, которое выполняет триггер.

Версия: 9.3

Следующие списки показывают возможности PL / pgSQL:

  • Это простой в использовании.
  • Может использоваться для создания функций и запуска процедур.
  • Добавляет управляющие структуры в язык SQL .
  • Может выполнять сложные вычисления.
  • Наследует все пользовательские типы, функции и операторы.
  • Может быть определен как доверенный сервером.

Преимущества использования PL / pgSQL

PostgreSQL и большинство других реляционных баз данных используют SQL в качестве языка запросов. На сервере базы данных каждый оператор SQL выполняется индивидуально, поэтому после отправки запроса дождитесь его обработки, получите и обработайте результат, а затем отправьте дополнительные запросы на сервер. С PL / pgSQL вы можете сгруппировать блок вычислений и серию запросов на сервере базы данных, таким образом обладая мощью процедурного языка и простотой использования SQL, но при этом значительно экономя накладные расходы на связь клиент-сервер.

  • Дополнительные обходы между клиентом и сервером исключены.
  • Промежуточные результаты, которые не нужны клиенту, не нужно маршалировать или передавать между сервером и клиентом.
  • Можно избежать нескольких раундов разбора запроса.

PL / pgSQL: поддерживаемые типы данных аргументов и результатов

  • Функции, написанные на PL / pgSQL, могут принимать в качестве аргументов любой скалярный или массив данных, поддерживаемый сервером, и возвращать тот же результат типа данных.
  • Кроме того, принимайте или возвращайте любой составной тип (тип строки), указанный именем.
  • Функции PL / pgSQL могут быть объявлены для приема переменного числа аргументов с помощью маркера VARIADIC.
  • Функции PL / pgSQL также могут быть объявлены для принятия и возврата полиморфных типов любого элемента, любого массива.
  • Функции PL / pgSQL также могут быть объявлены так, чтобы они возвращали «набор» (или таблицу) любого типа данных, который может быть возвращен как один экземпляр.
  • Функция PL / pgSQL может быть объявлена для возврата void, если она не имеет полезного возвращаемого значения.

Структура PL / pgSQL

PL / pgSQL - это блочно-структурированный язык, и каждый оператор в блоке заканчивается точкой с запятой. Блок, который появляется в другом блоке, должен иметь точку с запятой после END, однако для окончательного END, который завершает тело функции, точка с запятой не требуется. Все ключевые слова нечувствительны к регистру, а идентификаторы неявно преобразуются в строчные, если они не заключены в двойные кавычки, как в обычных командах SQL. См. Следующий синтаксис:

Синтаксис:

 [<< ярлык >>]
[ОБЪЯВИТЬ
       декларации]
  НАЧАТЬ
       заявления
  КОНЕЦ;

Метка (необязательная) необходима только в том случае, если вы хотите идентифицировать блок для использования в операторе EXIT или указать имена переменных, объявленных в блоке. Если метка дается после END, она должна совпадать с меткой в начале блока. Комментарии работают в коде PL / pgSQL так же, как и в обычном SQL.

Следующий:

Предыдущая: ТРИГГЕРС
Далее: Декларация

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code