V programovacím jazyce ABAP / 4 se používají dva typy SQL.
- NATIVNÍ SQL
- OPEN SQL.
Nativní SQL umožňuje používat příkazy SQL specifické pro databázi v programu ABAP / 4. To znamená, že můžete použít databázové tabulky, které nejsou spravovány slovníkem ABAP, a proto integrovat data, která nejsou součástí systému R / 3.
Open SQL se skládá ze sady příkazů ABAP, které provádějí operace s centrální databází v systému R / 3. Výsledky operací a jakékoli chybové zprávy jsou nezávislé na používaném databázovém systému. Open SQL tedy poskytuje jednotnou syntaxi a sémantiku pro všechny databázové systémy podporované SAP. Programy ABAP, které používají pouze příkazy Open SQL, budou fungovat v jakémkoli systému R / 3 bez ohledu na používaný databázový systém. Otevřené příkazy SQL mohou pracovat pouze s databázovými tabulkami, které byly vytvořeny ve slovníku ABAP.
Základní otevřené příkazy SQL
- VYBRAT
- VLOŽIT
- AKTUALIZACE
- UPRAVIT
- VYMAZAT
- OTEVŘENÝ KURZOR,? NAČÍT,? ZAVŘENÝ KURZOR
TABLES SBOOK.KURZOR TYPU DATOVÝCH C,WA LIKE SBOOK.OPEN CURSOR C FOR SELECT * FROM SBOOK WHERE CARRID = 'LH'AND CONNID = '0400'A FLDATE = '19950228'OBJEDNAT PRIMÁRNÍM KLÍČEM.DĚLAT.ZÍSKEJTE DALŠÍ KURZOR C DO WA.IF SY-SUBRC <> 0.ZAVŘÍT KURZOR C.VÝSTUP.ENDIF.ZÁPIS: / WA-BOOKID, WA-CUSTOMID, WA-CUSTTYPE,WA-SMOKER, WA-LUGGWEIGHT, WA-WUNIT,WA-FAKTURA.KONEC.
Výstup seznamu cestujících pro let Lufthansa 0400 dne 28-02.1995:
Otevřete návratové kódy SQL
Všechny otevřené příkazy SQL vyplňují následující dvě systémová pole návratovými kódy.SY-SUBRC
Po každém příkazu Open SQL obsahuje systémové pole SY-SUBRC hodnotu 0, pokud byla operace úspěšná, hodnotu jinou než 0, pokud ne.
SY-DBCNT
Po příkazu Open SQL obsahuje systémové pole SY-DBCNT počet zpracovaných řádků databáze.
Nativní SQL
Jak již bylo zmíněno, nativní SQL vám umožňuje používat příkazy SQL specifické pro databázi v programu ABAP.Chcete-li použít nativní příkaz SQL, musíte před ním uvést příkaz EXEC SQL a následovat jej příkazem ENDEXEC.
Syntax
EXEC SQL [PROVÁDĚNÍ