SAP Veiledning for HANA SQL lagret prosedyre

Hva er SQL-lagrede prosedyrer?

En prosedyre er en enhet/modul som utfรธrer en bestemt oppgave. Denne prosedyren kan kombineres for รฅ danne stรธrre programmer. Dette danner i utgangspunktet "Modular Design". En prosedyre kan pรฅkalles av en annen prosedyre som kalles det anropende programmet.

Prosedyrer er gjenbrukbare prosesseringsblokker med en spesifikk sekvens av datatransformasjon. Prosedyren kan ha multi-input/output parametere. Prosedyren kan opprettes som skrivebeskyttet eller lese-skrive.

An SQL Prosedyre kan opprettes pรฅ โ€“

  • Pรฅ skjemanivรฅ (katalognode)
  • Pรฅ pakkenivรฅ (innholdsnode)

Lagret prosedyresyntaks i SAP HANNA er som vist nedenfor -

SYNTAKS

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 }

CREATE PROCEDURE-setningen oppretter en prosedyre ved รฅ bruke programmeringssprรฅket omtale .

SYNTAKSEELEMENTER

ELEMENTS BESKRIVELSE
Navn pรฅ prosedyre
Parameteren er definert her. IN, OUT, INOUT parameter er der. Hver parameter er merket med nรธkkelordene IN/OUT/INOUT

โ€ข IN โ€“ Brukes for Pass Value To-prosedyre som INNPUT. Det er Read Only-parameter.

โ€ข OUT โ€“ Brukes for returverdi fra prosedyre som OUTPUT.

โ€ข INOUT โ€“ Brukes for Pass og Return Value To Procedure med samme parameter.

SPRร…K Definerer programmeringssprรฅket som brukes i prosedyren. Standard: SQLSCRIPT
SQL SIKKERHET Spesifiserer sikkerhetsmodusen for prosedyren. Standard: DEFINER

โ€ข DEFINER โ€“ Spesifiserer at utfรธringen av prosedyren utfรธres med rettighetene til definereren av prosedyren.

โ€ข INVOKER โ€“ Spesifiserer at utfรธringen av prosedyren utfรธres med rettighetene til den som pรฅkaller prosedyren.

Den definerer skjemaet for ukvalifiserte objekter i prosedyrekroppen. Hvis ingenting er definert, brukes det gjeldende skjemaet for sesjonen for prosedyren.
LESER SQL DATA Det markerer prosedyren som skrivebeskyttet, det betyr at prosedyren ikke endrer databasedataene eller strukturen og at prosedyren ikke inneholder DDL- eller DML-setninger. Denne prosedyren kaller bare andre skrivebeskyttede prosedyrer.
MED RESULTATVISNING Den definerer resultatvisningen som skal brukes som utdata for en skrivebeskyttet prosedyre.
Hvis en resultatvisning er spesifisert for en prosedyre, kan den kalles opp av en SQL uttalelse i samme prosess som en tabell eller visning.
SEKVENSIELL UTFร˜RELSE Denne uttalelsen vil tvinge frem sekvensiell utfรธrelse av prosedyrelogikken. Ingen parallellitet finner sted.
Den definerer hoveddelen av prosedyren basert pรฅ det valgte programmeringssprรฅket.
KUN OVERSKRIFT Hvis bare overskrift brukes, opprettes kun prosedyreegenskaper med OID.

Oppsummer dette innlegget med: