SQL vs PL SQL
SQL (Structured Query Language) adalah bahasa standar untuk menulis entri database relasional. SQL adalah pernyataan sederhana, yang memungkinkan untuk mengambil, menyisipkan, menghapus, memperbarui catatan sesuai kebutuhan pengguna. Sederhananya adalah bahasa berorientasi data untuk memilih dan memanipulasi kumpulan data. PL SQL (Bahasa Prosedural/Bahasa Kueri Terstruktur) adalah bahasa ekstensi prosedural untuk entri dan manipulasi data oleh Oracle.
“PL/SQL, ekstensi prosedural Oracle dari SQL, adalah bahasa pemrograman generasi keempat (4GL). Ia menawarkan fitur-fitur modern seperti enkapsulasi data, kelebihan beban, tipe pengumpulan, penanganan pengecualian, dan penyembunyian informasi. PL/SQL juga menawarkan akses SQL tanpa batas, integrasi yang erat dengan server dan alat Oracle, portabilitas, dan keamanan.”
SQL
Bahasa query terstruktur (SQL) diucapkan sebagai "sekuel" adalah bahasa komputer database yang dirancang untuk mengelola data dalam sistem manajemen database relasional (RDBMS), dan awalnya didasarkan pada aljabar relasional.
Cakupan dasar SQL adalah memasukkan data dan melakukan pembaruan, penghapusan, pembuatan skema, modifikasi skema, dan kontrol akses data terhadap database.
SQL memiliki elemen, dibagi menjadi berikut:
Queries – Mengambil data, berdasarkan kriteria tertentu. Ada beberapa kata kunci yang dapat digunakan dalam kueri. (Pilih, Dari, Dimana, Memiliki, Kelompokkan berdasarkan dan urutkan berdasarkan)
e.g: SELECTFROM table1 WHERE column1 > condition ORDER BY column2;
Pernyataan – Itu dapat mengontrol transaksi, aliran program, koneksi, sesi, atau diagnostik
Ekspresi – Itu bisa menghasilkan baik;
Nilai skalar
Tabel yang terdiri dari kolom dan baris data
Predicates -Menentukan kondisi yang dapat dievaluasi ke SQL Boolean (benar/salah/tidak diketahui)
Clauses – Komponen konstituen dari pernyataan dan pertanyaan
PL/SQL
PL/SQL (Bahasa Prosedural/Bahasa Kueri Terstruktur) adalah bahasa ekstensi prosedural Oracle Corporation untuk SQL dan database relasional Oracle. PL/SQL mendukung variabel, kondisi, loop, array, pengecualian. PL/SQL pada dasarnya wadah kode dapat dipatuhi ke database oracle. Oleh karena itu, pengembang perangkat lunak dapat menanamkan unit fungsionalitas PL/SQL ke dalam database secara langsung.
PL/SQL unit program dapat didefinisikan sebagai berikut:
Blok anonim
Membentuk dasar kode PL/SQL paling sederhana
Fungsi
Fungsi adalah kumpulan pernyataan SQL dan PL/SQL. Fungsi menjalankan tugas dan harus mengembalikan nilai ke lingkungan pemanggilan.
Prosedur
Prosedur mirip dengan Fungsi. Prosedur juga dapat dieksekusi untuk melakukan pekerjaan. Prosedur tidak dapat digunakan dalam pernyataan SQL, dapat mengembalikan beberapa nilai. Selain itu, fungsi dapat dipanggil dari SQL, sedangkan prosedur tidak.
Paket
Penggunaan paket adalah penggunaan kembali kode. Paket adalah grup dari Fungsi, Prosedur, Variabel, tabel PL/SQL dan pernyataan TYPE yang terhubung secara teoritis, Konstanta & Kursor dll… Paket biasanya memiliki dua bagian, spesifikasi dan badan
Dua keunggulan paket antara lain:
Pendekatan modular, enkapsulasi logika bisnis
Menggunakan variabel paket dapat dideklarasikan di level sesi
Jenis variabel dalam PL/SQL
Variabel
Variabel numerik
Variabel karakter
Variabel tanggal
Tipe data untuk kolom tertentu
Perbedaan antara SQL dan PL/SQL
SQL adalah bahasa berorientasi data untuk memilih dan memanipulasi data tetapi PL SQL adalah bahasa prosedural untuk membuat aplikasi.
SQL mengeksekusi satu pernyataan pada satu waktu sedangkan di PL blok kode SQL dapat dieksekusi.
SQL bersifat deklaratif sedangkan PL SQL bersifat prosedural.
SQL digunakan untuk menulis Query, Data Manipulation Language (DML) dan Data Definition Language (DDL) sedangkan PL SQL digunakan untuk menulis blok Program, Pemicu, Fungsi, Prosedur, dan Paket.
Rekap:
SQL adalah bahasa kueri terstruktur. Dalam SQL berbagai kueri digunakan untuk menangani database dengan cara yang disederhanakan. PL/SQL adalah bahasa prosedural yang berisi berbagai jenis variabel, fungsi dan prosedur. SQL memungkinkan pengembang untuk mengeluarkan permintaan tunggal atau mengeksekusi satu sisipan/perbarui/hapus sekaligus, sementara PL/SQL memungkinkan penulisan program lengkap untuk menyelesaikan beberapa pilihan/sisipan/pembaruan/penghapusan sekaligus. SQL adalah bahasa berorientasi data sederhana sedangkan bahasa pemrograman PL/SQL.