Dalam bahasa pemrograman ABAP / 4, ada dua jenis SQL yang digunakan.
- SQL ASLI
- BUKA SQL.
SQL Native memungkinkan Anda menggunakan pernyataan SQL khusus database dalam program ABAP / 4. Ini berarti Anda dapat menggunakan tabel database yang tidak diatur oleh kamus ABAP, dan oleh karena itu mengintegrasikan data yang bukan merupakan bagian dari sistem R / 3.
Open SQL terdiri dari sekumpulan pernyataan ABAP yang melakukan operasi pada database pusat di sistem R / 3. Hasil operasi dan pesan kesalahan tidak bergantung pada sistem database yang digunakan. Open SQL dengan demikian menyediakan sintaks dan semantik yang seragam untuk semua sistem database yang didukung oleh SAP. Program ABAP yang hanya menggunakan pernyataan Open SQL akan bekerja di sistem R / 3 apa pun, terlepas dari sistem database yang digunakan. Pernyataan SQL terbuka hanya dapat berfungsi dengan tabel database yang telah dibuat di kamus ABAP.
Perintah SQL Terbuka Dasar
- PILIH
- MEMASUKKAN
- MEMPERBARUI
- MEMODIFIKASI
- MENGHAPUS
- OPEN CURSOR,? FETCH,? TUTUP CURSOR
TABLES SBOOK.KURSOR TIPE DATA C,WA SEPERTI SBOOK.BUKA KURSOR C UNTUK PILIH * DARI SBOOK DI MANA CARRID = 'LH'DAN PERTIMBANGKAN = '0400'DAN FLDATE = '19950228'ORDER OLEH KUNCI UTAMA.MELAKUKAN.FETCH CURSOR C BERIKUTNYA KE WA.JIKA SY-SUBRC <> 0.TUTUP KURSOR C.KELUAR.BERAKHIR JIKA.TULIS: / WA-BOOKID, WA-CUSTOMID, WA-CUSTTYPE,WA-SMOKER, WA-LUGGWEIGHT, WA-WUNIT,WA-INVOICE.ENDDO.
Keluarkan daftar penumpang untuk penerbangan Lufthansa 0400 pada 28-02.1995:
Buka Kode Pengembalian SQL
Semua pernyataan Open SQL mengisi dua bidang sistem berikut dengan kode pengembalian.SY-SUBRC
Setelah setiap pernyataan Open SQL, bidang sistem SY-SUBRC berisi nilai 0 jika operasi berhasil, nilai selain 0 jika tidak.
SY-DBCNT
Setelah pernyataan Open SQL, bidang sistem SY-DBCNT berisi jumlah baris database yang diproses.
SQL asli
Seperti yang telah disebutkan, Native SQL memungkinkan Anda menggunakan pernyataan SQL khusus database dalam program ABAP.Untuk menggunakan pernyataan Native SQL, Anda harus mengawalinya dengan pernyataan EXEC SQL, dan mengikutinya dengan pernyataan ENDEXEC.
Sintaksis
JALANKAN SQL [PERFORMING