SAP Esercitazione sulla procedura memorizzata HANA SQL

Cosa sono le procedure memorizzate SQL?

Una procedura è un'unità/modulo che esegue un compito specifico. Questa procedura può essere combinata per formare programmi più grandi. Questo costituisce fondamentalmente il "Design modulare". Una procedura può essere invocata da un'altra procedura chiamata programma chiamante.

Le procedure sono blocchi di elaborazione riutilizzabili con una sequenza specifica di trasformazione dei dati. La procedura può avere parametri multi-ingresso/uscita. La procedura può essere creata in sola lettura o in lettura-scrittura.

An SQL La procedura può essere creata in –

  • A livello di schema (nodo Catalogo)
  • A livello di pacchetto (nodo contenuto)

Sintassi della procedura memorizzata in SAP HANA è come mostrato di seguito –

SINTASSI

CREATE PROCEDURE <proc_name> [(<parameter_clause>)] [LANGUAGE <lang>]    
        [SQL SECURITY <mode>] [DEFAULT SCHEMA <default_schema_name>]
        [READS SQL DATA [WITH RESULT VIEW <view_name>]] AS
        {BEGIN [SEQUENTIAL EXECUTION]
				<procedure_body>			
        END        
        | HEADER ONLY }

L'istruzione CREATE PROCEDURE crea una procedura utilizzando il linguaggio di programmazione citato .

ELEMENTI DI SINTASSI

ELEMENTI DESCRIZIONE
Nome della procedura
Il parametro è definito qui. Il parametro IN, OUT, INOUT è presente. Ogni parametro è contrassegnato utilizzando le parole chiave IN/OUT/INOUT

• IN – Utilizzato per la procedura Passa valore a come INPUT. È un parametro di sola lettura.

• OUT – Utilizzato per il valore restituito dalla procedura come OUTPUT.

• INOUT – Utilizzato per Passare e restituire valore alla procedura con lo stesso parametro.

LINGUA Definisce il linguaggio di programmazione utilizzato nella procedura. Impostazione predefinita: SQLSCRIPT
SICUREZZA SQL Specifica la modalità di sicurezza della procedura. Predefinito: DEFINITORE

• DEFINER – Specifica che l'esecuzione della procedura viene eseguita con i privilegi del definitore della procedura.

• INVOKER – Specifica che l'esecuzione della procedura viene eseguita con i privilegi dell'invocatore della procedura.

Definisce lo schema per gli oggetti non qualificati nel corpo della procedura. Se non è definito nulla, per la procedura viene utilizzato lo schema corrente della sessione.
LEGGE I DATI SQL Contrassegna la procedura come di sola lettura, significa che la procedura non modifica i dati del database o la sua struttura e che la procedura non contiene istruzioni DDL o DML. Questa procedura chiama solo altre procedure di sola lettura.
CON VISTA DEI RISULTATI Definisce la vista dei risultati da utilizzare come output di una procedura di sola lettura.
Se per una procedura viene specificata una visualizzazione dei risultati, è possibile richiamarla da un SQL istruzione nello stesso processo di una tabella o vista.
ESECUZIONE SEQUENZIALE Questa istruzione forzerà l'esecuzione sequenziale della logica della procedura. Non avviene alcun parallelismo.
Definisce il corpo principale della procedura in base al linguaggio di programmazione selezionato.
SOLO INTESTAZIONE Se viene utilizzato Solo intestazione, solo le proprietà della procedura vengono create con OID.