Procedura to jednostka / moduł, który wykonuje określone zadanie. Tę procedurę można łączyć w celu utworzenia większych programów. Zasadniczo tworzy to „konstrukcję modułową”. Procedura może być wywołana przez inną procedurę, nazywaną programem wywołującym.
Procedury są blokami przetwarzania wielokrotnego użytku z określoną sekwencją transformacji danych. Procedura może mieć parametry wielu wejść / wyjść. Procedura może być utworzona tylko do odczytu lub do odczytu i zapisu.
Procedurę SQL można utworzyć pod adresem -
- Na poziomie schematu (węzeł katalogu)
- Na poziomie pakietu (węzeł zawartości)
Składnia procedury składowanej w SAP HANA jest pokazana poniżej -
SKŁADNIA
UTWÓRZ PROCEDURĘ[( )] [JĘZYK ][ZABEZPIECZENIA SQL ] [DOMYŚLNY SCHEMAT ][CZYTA DANE SQL [Z WIDOKIEM WYNIKÓW ]] AS{BEGIN [SEQUENTIAL EXECUTION] KONIEC| TYLKO NAGŁÓWEK}
Instrukcja CREATE PROCEDURE tworzy procedurę przy użyciu wspomnianego języka programowania
ELEMENTY SKŁADNIKI
ELEMENTY | OPIS |
---|---|
| Nazwa procedury |
| Tutaj definiuje się parametr. Dostępny jest parametr IN, OUT, INOUT. Każdy parametr jest oznaczony za pomocą słów kluczowych IN / OUT / INOUT • IN - Używany do procedury przekazywania wartości do jako INPUT. Jest to parametr tylko do odczytu. • OUT - Używany do zwracania wartości z procedury jako OUTPUT. • INOUT - Używany do przekazywania i zwracania wartości do procedury przez ten sam parametr. |
JĘZYK | Określa język programowania używany w procedurze. Domyślnie: SQLSCRIPT |
ZABEZPIECZENIA SQL
| Określa tryb zabezpieczeń procedury. Wartość domyślna: DEFINER • DEFINER - określa, że wykonanie procedury jest wykonywane z uprawnieniami osoby definiującej procedurę. • INVOKER - określa, że wykonanie procedury jest wykonywane z uprawnieniami osoby wywołującej procedurę. |
Definiuje schemat niekwalifikowanych obiektów w treści procedury. Jeśli nic nie jest zdefiniowane, do procedury używany jest bieżący schemat sesji. | |
CZYTA DANE SQL | Oznacza procedurę jako tylko do odczytu, co oznacza, że procedura nie modyfikuje danych bazy danych ani jej struktury oraz że procedura nie zawiera instrukcji DDL ani DML. Ta procedura wywołuje tylko inne procedury tylko do odczytu. |
Z WIDOKIEM WYNIKÓW | Definiuje widok wyniku, który ma być używany jako dane wyjściowe procedury tylko do odczytu. Jeśli dla procedury określono widok wyników, można go wywołać za pomocą instrukcji SQL w tym samym procesie, co tabela lub widok. |
WYKONANIE SEKWENCYJNE | Ta instrukcja wymusi sekwencyjne wykonywanie logiki procedury. Nie ma równoległości. |
Definiuje główną część procedury w oparciu o wybrany język programowania. | |
TYLKO NAGŁÓWEK | Jeśli używany jest tylko nagłówek, tylko właściwości procedury są tworzone z OID. |