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. |
