În limbajul de programare ABAP / 4, sunt utilizate două tipuri de SQL.
- SQL NATIV
- OPEN SQL.
SQL nativ vă permite să utilizați instrucțiuni SQL specifice bazei de date într-un program ABAP / 4. Aceasta înseamnă că puteți utiliza tabele de baze de date care nu sunt administrate de dicționarul ABAP și, prin urmare, puteți integra date care nu fac parte din sistemul R / 3.
Open SQL constă dintr-un set de instrucțiuni ABAP care efectuează operațiuni pe baza de date centrală din sistemul R / 3. Rezultatele operațiilor și orice mesaje de eroare sunt independente de sistemul de baze de date utilizat. Open SQL oferă astfel o sintaxă și o semantică uniformă pentru toate sistemele de baze de date acceptate de SAP. Programele ABAP care utilizează numai instrucțiuni Open SQL vor funcționa în orice sistem R / 3, indiferent de sistemul de baze de date utilizat. Instrucțiunile SQL deschise pot funcționa numai cu tabele de baze de date care au fost create în dicționarul ABAP.
Comenzi SQL de bază deschise
- SELECTAȚI
- INTRODUCE
- ACTUALIZAȚI
- MODIFICA
- ȘTERGE
- CURSOR DESCHIS,? FETCH,? CURSOR ÎNCHIS
CARTE DE MASE.CURSOR TIP DATE C,WA LIKE SBOOK.CURSOR DESCHIS C PENTRU SELECT * DIN CARTE UNDE CARRID = 'LH'ȘI CONNID = '0400'ȘI FLDATE = '19950228'COMANDĂ PE CHEIE PRIMARĂ.DO.FETCH NEXT CURSOR C IN WA.DACĂ SY-SUBRC <> 0.CURSOR ÎNCHIS C.IEȘIRE.ENDIF.SCRIERE: / WA-BOOKID, WA-CUSTOMID, WA-CUSTTYPE,WA-SMOKER, WA-LUGGWEIGHT, WA-WUNIT,FACTURA WA.ENDDO.
Afișați lista de pasageri pentru zborul Lufthansa 0400 pe 28-02.1995:
Deschideți codurile de returnare SQL
Toate instrucțiunile Open SQL completează următoarele două câmpuri de sistem cu coduri de returnare.SY-SUBRC
După fiecare instrucțiune Open SQL, câmpul de sistem SY-SUBRC conține valoarea 0 dacă operațiunea a reușit, o altă valoare decât 0 dacă nu.
SY-DBCNT
După o declarație Open SQL, câmpul de sistem SY-DBCNT conține numărul de linii de baze de date procesate.
SQL nativ
După cum sa menționat deja, Native SQL vă permite să utilizați instrucțiuni SQL specifice bazei de date într-un program ABAP.Pentru a utiliza instrucțiunea SQL nativă, trebuie să o precedeți cu instrucțiunea SQL EXEC și să o urmați cu instrucțiunea ENDEXEC.
Sintaxă
EXEC SQL [PERFORMING