Урок за съхранена процедура на SQL за SAP HANA

Anonim

Процедурата е единица / модул, която изпълнява определена задача. Тази процедура може да се комбинира, за да се образуват по-големи програми. Това в основата формира „Модулен дизайн“. Процедура може да бъде извикана от друга процедура, която се нарича извикваща програма.

Процедурите са повторно използваем блок за обработка със специфична последователност от трансформация на данни. Процедурата може да има параметри с множество входове / изходи. Процедурата може да бъде създадена като само за четене или четене-писане.

SQL процедура може да бъде създадена на -

  • На ниво схема (възел на каталога)
  • На ниво пакет (възел на съдържанието)

Синтаксисът на съхранената процедура в SAP HANA е показан по-долу -

СИНТАКСИС

СЪЗДАВАНЕ НА ПРОЦЕДУРА <име на процес> [(<клауза_параметър>)] [ЕЗИК <език>][SQL СИГУРНОСТ <режим>] [СХЕМА ПО СТАНДАРТ по подразбиране <име_по подразбиране_схема>][ЧЕТЕ SQL ДАННИ [С РАЗГЛЕЖДАНЕ НА РЕЗУЛТАТ <име_преглед>]] КАТО{НАЧАЛО [ПОСТОЯННО ИЗПЪЛНЕНИЕ]
КРАЙ| САМО ЗА ГЛАВА}

Операторът CREATE PROCEDURE създава процедура, използвайки споменатия език за програмиране .

СИНТАКСНИ ЕЛЕМЕНТИ

ЕЛЕМЕНТИ ОПИСАНИЕ
<име на процес> Име на процедурата
<параметър_клауза> Параметърът е дефиниран тук. Параметърът IN, OUT, INOUT е налице. Всеки параметър е маркиран с помощта на ключовите думи IN / OUT / INOUT • IN - Използва се за процедура за предаване на стойност като INPUT. Това е параметър Само за четене. • OUT - Използва се за върната стойност от процедурата като OUTPUT. • INOUT - Използва се за пропускане и връщане на стойност към процедура по същия параметър.
ЕЗИК <Език> Определя езика за програмиране, използван в процедурата. По подразбиране: SQLSCRIPT
SQL СИГУРНОСТ <режим> Указва режима на защита на процедурата. По подразбиране: DEFINER • DEFINER - Указва, че изпълнението на процедурата се извършва с привилегиите на дефиниращия процедурата. • INVOKER - Указва, че изпълнението на процедурата се извършва с привилегиите на извикващия процедурата.
<име по подразбиране_схема> Той дефинира схемата за неквалифицирани обекти в тялото на процедурата. Ако нищо не е дефинирано, тогава текущата схема на сесията се използва за процедурата.
ЧЕТЕ SQL ДАННИ Той маркира процедурата като само за четене, това означава, че процедурата не променя данните на базата данни или нейната структура и че процедурата не съдържа DDL или DML изрази. Тази процедура извиква само други процедури само за четене.
С ПРЕГЛЕД НА РЕЗУЛТАТА Той определя изгледа на резултатите, който да се използва като изход на процедура само за четене. Ако за процедура е посочен изглед с резултат, тогава той може да бъде извикан чрез SQL израз в същия процес като таблица или изглед.
ПОСЛЕДОВАТЕЛНО ИЗПЪЛНЕНИЕ Това изявление ще принуди последователно изпълнение на логиката на процедурата. Няма паралелизъм.
<тяло на процедурата> Той определя основната част от процедурата въз основа на избрания език за програмиране.
САМО ЗА ГЛАВА Ако се използва само заглавие, тогава се създават само свойства на процедурата с OID.