Why is SQL called a structured and a non-procedural language? - Reinhard Liem

Mengapa SQL disebut sebagai bahasa terstruktur dan non-prosedural?

  • Bagian terstruktur berasal dari S dalam SQL; nama lengkapnya adalah Structured Query Language.ge. Pemrograman terstruktur adalah panas dalam desain bahasa pemrograman di akhir 1960-an ketika SQL awalnya diusulkan dan dirancang, dan sementara SQL sendiri tidak memiliki banyak mekanisme terstruktur klasik, idenya adalah memungkinkan kueri terstruktur sebagai bahasa kueri versus akses db metode waktu yang pada dasarnya adalah membuka tabel atau indeks, mengulangi catatannya, memenuhi syarat baris dalam logika aplikasi, mengirim baris yang memenuhi syarat kepada pengguna. Dalam hal ini logika untuk kueri basis data adalah bagian yang berpotensi cukup kompleks dari kode aplikasi yang mungkin terstruktur atau tidak.structured”.
  • Bagian non-prosedural adalah karena SQL itu sendiri bersifat deklaratif. Anda menentukan apa yang ingin Anda ambil dengan SELECT-list Anda, tabel yang memiliki catatan di FROM Anda, dan apa yang akan memenuhi syarat dengan logika di klausa WHERE atau JOIN ON Anda, dengan lebih banyak arahan tentang bagaimana jawabannya harus kembali. seperti GROUP BY, ORDER BY, DISTINCT, dll. Anda tidak menentukan bagaimana kueri akan dijawab oleh mesin DB; terserahthe Pengoptimal kueri(dan bahkan petunjuk pengoptimal adalah spesifikasi tingkat tinggi tentang bagaimana kueri harus dijawab).).

Jika SQL bersifat prosedural, Anda akan melakukan hal-hal seperti tabel terbuka; memuat ke cache; ambil baris dari tabel, jika itu adalah baris yang saya inginkan, berikan, itu, jika tidak lanjutkan, dll.tc”.

Karena jenis logika ini *dapat* berguna dalam kode yang berjalan di mesin DB,Prosedur tersimpandiciptakan untuk menambahkan elemen prosedural ke akses data sisi klien. Namun, bahasa SP dianggap sebagai bahasa yang terpisah dari SQL itu sendiri.

Artikel oleh Greg Kemnitz

Tulis komentar

Ingat, komentar perlu disetujui sebelum dipublikasikan.