Structured Query Language (SQL)

Pengertian Structured Query Language (SQL)

Structured Query Language (SQL) merupakan bahasa yang paling umum dipakai dalam pengelolaan database relasional. Bahasa ini secara fakta merupakan bahasa standar yang digunakan dalam DBMS relasional. Saat ini hampir semua DBMS yang ada mendukung bahasa ini untuk pengelolaan datanya.

Sejarah SQL

SQLSejarah SQL dimulai dari sebuah penelitian Jhonny Oracle  yang merupakan peneliti dari IBM.  Penelitian ini dilakukan pada Juni 1970. Penelitian tersebut membahas tentang pembuatan database relasional. Dalam artikelnya, Jhonny  membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam database. Bahasa standar tersebut kemudian diberi nama SEQUEL (Structured English Query Language). Selanjutnya, IBM mengadakan proyek pengembangan database relasional berbasis bahasa standar tersebut. Akan tetapi, karena permasalahan hukum mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi basis data relasional dikenal dengan System/R.

Di era akhir 1970-an, perusahaan Oracle memabngun database server  yang sangat populer yang dinamakan sesuai dengan nama perusahaannya. Dengan populernya  database server  Oracle, maka SQL juga ikut menjadi populer.Hingga saat ini menjadi standar bahasa dalam DBMS.

Standarisasi SQL

Standarisasi SQL dimulai sejak tahun 1986, diawali dengan dilaunchingnya standar SQL oleh ANSI. Standar ini kemudian disebut sebagai SQL86. Standar tersebut kemudian mengalami perbaikan-perbaikan pada tahun 1989, 1992.  san ersi terakhir dikenal dengan SQL92. Selanjutnya pada tahun 1999 dikeluarkan standar baru yaitu SQL99 , hanya saja dalam perkembanganya DBMS umumnya mereferensi pada SQL92. Saat ini, sesungguhnya tidak ada server basis data yang 100% mendukung SQL92. Hal ini disebabkan masing-masing server memiliki gaya bahasanya sendiri-sendiri.

Jenis sub bahasa SQL

Secara umum, bahasa SQL terbagi empat sub bahasa, yaitu:

  • Data Definition Language (DDL)
  • Data Manipulation Language (DML).
  • Data Control Language (DCL)
  • Transaction Control Language  (TCL)

Implementasi DDL dan DML berbeda untuk tiap setiap DBMS, akan tetap secara general penerpan tiap bahasa ini memiliki format standar yang ditentukan oleh ANSI.

Data Definition Language (DDL)

DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan sebagainya. Secara umum, peritah DDL meliputi:

  • CREATE untuk membuat objek baru,
  • USE untuk menggunakan objek,
  • ALTER untuk mengubah objek yang sudah ada, dan
  • DROP untuk menghapus objek.

DDL biasanya digunakan oleh administrator database dalam ppengembangan sistem informasi.

Data Manipulation Language (DML)

DML digunakan untuk memanipulasi data yang ada dalam suatu tabel. Perintah yang umum digunakan, yaitu:

  • SELECT untuk menampilkan data
  • INSERT untuk menambahkan data baru
  • UPDATE untuk mengubah data yang sudah ada
  • DELETE untuk menghapus data

Data Control Language (DCL)

Data Control Language (DCL) merupakan sub bahasa SQL yang digunakan untuk melakukan pengontrolan data dan server databasenya. Perintah DCL digunakan untuk menegakkan keamanan database dalam lingkungan beberapa pengguna database. Dua jenis perintah DCL adalah GRANT REVOKE dan. Hanya Database Administrator atau pemilik dari objek database dapat memberikan / menghapus hak istimewa pada objek database. Perintah DCL, antara lain:

  • GRAND  untuk memberikan hak akses oleh administrator server kepada pengguna biasa. Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus (DELETE), mengubah (UPDATE), dan hak khusus berkenaan dengan sistem databasenya.
  • REVOKE  Perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh administrator.

Transaction Control Language (TCL)

Transaction Control Language (TCL) adalah perintah SQL untuk proses transaksi. Proses transaksi ini digunakan untuk perintah yang lebih dari 1, namun harus berjalan semua, atau tidak sama sekali. Misalnya untuk aplikasi critical seperti transfer uang dalam sistem database perbankan. Setidaknya akan ada 2 perintah, yaitu mengurangi uang nasabah A, dan menambah uang nasabah B. Namun jika terjadi kesalahan sistem, kedua transaksi ini harus dibatalkan. Tidak bisa hanya satu perintah saja. perintah TCL, di antarannya.

  • COMMIT perintah untuk menyetujui rangkaian perintah yang berhubungan erat yang telah berhasil dilakukan
  • ROLLBACK membatalkan transaksi yang dilakukan karena adanya kesalahan atau
    kegagalan pada salah satu rangkaian perintah.

Perkembangan SQL

Dengan adanya berbagai perusahaan/vendor yang membuat berbagai produk SQL maka efeknya adalah timbul berbagai macam perbedaan dalam bahasa SQL yang dikembanglan oleh tiap-tiap perusahaan tersebut. Contohnya saja, bahasa SQL yang dimiliki oleh Microsoft (yang bernama T-SQL) akan berbeda dengan bahasa SQL yang dikembangkan oleh Oracle (yang bernama PL/SQL). Namun demikian semua vendor diwajibkan untuk mendukung bahasa standard yang ditentukan oleh ANSI, misalnya semua pengembang bahasa SQL wajib dalam mengimplementasikan kata kunci atau statemen standard SQL seperti SELECT, UPDATE, DELETE, INSERT, WHERE dan lain sebagainya. Perbedaan bahasa SQL yang dikembangkan oleh setiap vendor itu dinamakan extension atau juga disebut dengan dialek.

Demikianlah tadi pengenalan konsep  Structured Query Language (SQL). Selamat belajar dan berbagi.

 

Refferensi

  • Paul, Ryan. “A guided tour of the Microsoft Command Shell”. Ars Technica. Diakses 10 April 2011.
  • “ISO/IEC 9075-1:2008: Information technology – Database languages – SQL – Part 1: Framework (SQL/Framework)”
  • Beaulieu, Alan (April 2009). In Mary E Treseler. Learning SQL (ed. 2nd). Sebastapol, CA, USA: O’Reilly. ISBN 978-0-596-52083-0.
  • Troels Arvin, 2007-05-26, http://troels.arvin.dk/db/rdbms/ Comparison of different SQL implementations
  • SQL Org, SQL Tutorial
  • Mike Chapple, SQL Fundamentals
  • MySQL AB, MySQL 5.0 Reference Manual
  • Buku Gratis MySQL 5: Dari Pemula Hingga Mahir, Buku Gratis MySQL 5

Tuliskan komentar anda

Komentar

Tinggalkan Balasan