PL/SQL

Материал из Seo Wiki - Поисковая Оптимизация и Программирование
Перейти к навигацииПерейти к поиску
PL/SQL

PL/SQL (Procedural Language / Structured Query Language) — язык программирования, процедурное расширение языка SQL корпорацией Oracle. Базируется на языке Ада.

Функциональность

PL/SQL даёт возможность использовать переменные, операторы, массивы, курсоры и исключения. Начиная с версии 8 посредством использования Oracle RDBMS стала доступна и объектно-ориентированная модель.

Стандартный SQL является специализированным декларативным языком программирования. На язык наложены определённые ограничения, такие как, например, отсутствие прямой поддержки циклов. PL/SQL же, как полный по Тьюрингу язык, позволяет разработчикам обрабатывать реляционную базу данных Oracle, используя (более привычный) императивный стиль программирования. Операторы SQL могут быть легко вызваны непосредственно из PL/SQL-процедуры, функции или из триггера (иногда с некоторыми ограничениями).

Базовая структура кода

Программа на PL/SQL состоит из блоков (анонимных или поименованных). Блок может содержать вложенные блоки, называемые иногда подблоками. Общая форма PL/SQL-блока:

<source lang="plsql">DECLARE -- Описания блока, переменные, типы, курсоры и т. п. (опционально) BEGIN -- Непосредственно код программы EXCEPTION -- Обработка исключений (опционально) END; /* Многострочные комментарии… */ -- Однострочный комментарий</source>

Типы данных

Язык PL/SQL поддерживает следующие категории типов:

  • встроенные типы данных, включая коллекции и записи;
    • скалярные;
    • составные;
    • ссылочные;
    • LOB-типы;
  • объектные типы данных.

Операторы управления

  • операторы выбора:

<source lang="plsql"> IF - THEN - END IF; IF - THEN - ELSE - END IF; IF - THEN - ELSIF - END IF; CASE - WHEN - THEN - END CASE;</source>

  • операторы цикла:

<source lang="plsql">LOOP - END LOOP; WHILE - LOOP - END LOOP; FOR - LOOP - END LOOP; EXIT; EXIT WHEN;</source>

  • операторы безусловного перехода:

<source lang="plsql">GOTO; NULL; «labels»</source>

Пример программы

Программа, выводящая в консоли SQL*Plus строчку «Hello, World!» с использованием инициализированной переменной.

<source lang="plsql"> set serveroutput on

declare

   hello varchar2(50) := 'Hello, world!';

begin

   dbms_output.put_line(hello);

end; </source>

Ссылки

ca:PL/SQL cs:PL/SQL de:PL/SQL en:PL/SQL es:PL/SQL fr:PL/SQL he:PL/SQL hu:PL/SQL it:PL/SQL ja:PL/SQL ko:PL/SQL nl:PL/SQL pl:PL/SQL pt:PL/SQL ro:PL/SQL sk:PL/SQL sv:PL/SQL tg:PL/SQL th:PL/SQL tr:PL/SQL uk:PL/SQL zh:PL-SQL

Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....