SQL: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
kTidak ada ringkasan suntingan |
|||
Baris 2:
{{untuk|nama kelompok lawak di Indonesia|SQL (lawak)}}
'''SQL''' (Structured Query Language) adalah sebuah [[Bahasa pemrograman|bahasa]] yang dipergunakan untuk mengakses [[data]] dalam [[basis data]]
==Sejarah==
Sejarah SQL dimulai dari artikel seorang peneliti dari [[IBM]] bernama [[EF Codd]] yang membahas tentang ide pembuatan [[basis data]] relasional pada bulan [[Juni]] [[1970]]. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi nama '''SEQUEL''' (
Setelah terbitnya artikel tersebut, [[IBM]] mengadakan proyek pembuatan basis data relasional
▲Sejarah SQL dimulai dari artikel seorang peneliti dari [[IBM]] bernama [[EF Codd]] yang membahas tentang ide pembuatan [[basis data]] relasional pada bulan [[Juni 1970]]. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi nama SEQUEL (Structured English Query Language).
▲Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan basis data relasional beserta SEQUEL. Akan tetapi, karena permasalah hukum mengenai penamaan SQL, IBM mengubahnya menjadi SQL. Implementasi basis data relasional dikenal dengan ''System/R''.
Di akhir tahun 1970-an, muncul perusahaan bernama [[Oracle]] yang membuat [[server]] basis data populer yang bernama sama dengan nama perusahaannya. Dengan naiknya kepopuleran Oracle, maka SQL juga ikut populer sehingga saat ini menjadi standar [[de facto]] bahasa dalam manajemen basis data.▼
▲Di akhir tahun [[1970]]-an, muncul perusahaan bernama [[Oracle]] yang membuat [[server
==Standarisasi==
Standarisasi SQL dimulai pada tahun [[1986]], ditandai dengan dikeluarkannya standar SQL oleh [[ANSI]]. Standar ini sering disebut dengan [[SQL86]].Standar tersebut kemudian diperbaiki pada tahun [[1989]] kemudian diperbaiki lagi pada tahun [[1992]]. Versi terakhir dikenal dengan [[SQL92]]. Pada tahun 1999 dikeluarkan standar baru yaitu [[SQL99]]
▲Standarisasi SQL dimulai pada tahun [[1986]], ditandai dengan dikeluarkannya standar SQL oleh ANSI. Standar ini sering disebut dengan SQL86.Standar tersebut kemudian diperbaiki pada tahun 1989 kemudian diperbaiki lagi pada tahun [[1992]]. Versi terakhir dikenal dengan SQL92. Pada tahun 1999 dikeluarkan standar baru yaitu SQL99 ata disebut juga SQL99, akan tetapi kebanyakan implementasi mereferensi pada SQL92.
Saat ini sebenarnya tidak ada server basis data yang 100% mendukung SQL92. Hal ini disebabkan masing-masing server memiliki dialek masing-masing.
==Pemakaian dasar==
Secara umum, SQL terdiri dari dua bahasa, yaitu ''[[Data Definition Language]]'' (DDL) dan ''[[Data Manipulation Language]]'' (DML). Implementasi DDL dan DML berbeda untuk tiap [[sistem manajemen basis data]] (SMBD)<ref>Troels Arvin, 2007-05-26, http://troels.arvin.dk/db/rdbms/ Comparison of different SQL implementations</ref>, namun secara umum implementasi tiap bahasa ini memiliki bentuk standar yang ditetapkan [[ANSI]]. Artikel ini akan menggunakan bentuk paling umum yang dapat digunakan pada kebanyakan SMBD.▼
▲Secara umum, SQL terdiri dari dua bahasa, yaitu [[Data Definition Language]] (DDL) dan [[Data Manipulation Language]] (DML). Implementasi DDL dan DML berbeda untuk tiap [[sistem manajemen basis data]] (SMBD)<ref>Troels Arvin, 2007-05-26, http://troels.arvin.dk/db/rdbms/ Comparison of different SQL implementations</ref>, namun secara umum implementasi tiap bahasa ini memiliki bentuk standar yang ditetapkan [[ANSI]]. Artikel ini akan menggunakan bentuk paling umum yang dapat digunakan pada kebanyakan SMBD.
===Data Definition Language===
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, DDL yang digunakan adalah <code>CREATE</code> untuk membuat objek baru, <code>USE</code> untuk menggunakan objek, <code>ALTER</code> untuk mengubah objek yang sudah ada, dan <code>DROP</code> untuk menghapus objek. DDL biasanya digunakan oleh [[administrator]] basis data dalam pembuatan sebuah [[program|aplikasi]] basis data.▼
▲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, DDL yang digunakan adalah <code>CREATE</code> untuk membuat objek baru, <code>USE</code> untuk menggunakan objek, <code>ALTER</code> untuk mengubah objek yang sudah ada, dan <code>DROP</code> untuk menghapus objek. DDL biasanya digunakan oleh [[administrator]] basis data dalam pembuatan sebuah [[program|aplikasi]] basis data.
====<code>CREATE</code>====
<code>CREATE</code> digunakan untuk membuat basis data maupun objek-objek basis data. SQL yang umum digunakan adalah:
<code>CREATE DATABASE nama_basis_data</code>
<code>CREATE DATABASE</code> membuat sebuah basis data baru.
<code>CREATE TABLE nama_tabel</code>
<code>CREATE TABLE</code> membuat tabel baru pada basis data yang sedang aktif. Secara umum, perintah ini memiliki bentuk
CREATE TABLE [''nama_tabel'']
Baris 185 ⟶ 175:
=====Fungsi aggregat=====
Beberapa SMBD memiliki fungsi aggregat, yaitu fungsi-fungsi khusus yang melibatkan sekelompok data (aggregat). Secara umum fungsi aggregat adalah:
*<code>SUM</code> untuk menghitung total nominal data
Baris 196 ⟶ 185:
=====Subquery=====
Ada kalanya ''query'' dapat menjadi kompleks, terutama jika melibatkan lebih dari satu tabel dan/atau fungsi aggregat. Beberapa SMBD mengizinkan penggunaan ''subquery''. Contoh:
Tampilkan username pengguna yang memiliki jumlah transaksi terbesar.
Baris 209 ⟶ 198:
====<code>INSERT</code>====
Untuk menyimpan data dalam tabel dipergunakan sintaks:
INSERT INTO [NAMA_TABLE] ([DAFTAR_FIELD]) VALUES ([DAFTAR_NILAI])▼
▲INSERT INTO [NAMA_TABLE] ([DAFTAR_FIELD]) VALUES ([DAFTAR_NILAI])
Contoh:
INSERT INTO TEST (NAMA, ALAMAT, PASSWORD) VALUES ('test', 'alamat', 'pass');▼
▲INSERT INTO TEST (NAMA, ALAMAT, PASSWORD) VALUES ('test', 'alamat', 'pass');
====<code>UPDATE</code>====
Untuk mengubah data menggunakan sintaks:
UPDATE [NAMA_TABLE] SET [NAMA_KOLOM]=[NILAI] WHERE [KONDISI]
Contoh:
UPDATE Msuser set password="123456" where username="abc"
====<code>DELETE</code>====
Baris 234 ⟶ 218:
Untuk menghapus data dipergunakan sintaks:
DELETE FROM [NAMA_TABLE] [KONDISI]▼
▲DELETE FROM [NAMA_TABLE] [KONDISI]
Contoh:
DELETE FROM TEST WHERE NAMA='test';
==Catatan==
|