Structured Query Language (SQL)

Friday, 11 October 20130 comments


Sejarah SQL dimulai dari artikel seorang peneliti dari IBM bernama EF Codd yang membahas tentang ide pembuatan database relasional pada bulan Juni 1970. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam database tersebut. Bahasa tersebut kemudian diberi nama SEQUEL (Structured English Query Language). Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan database relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan hukum mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi database relasional dikenal dengan System/R. Di akhir tahun 1970-an, muncul perusahaan bernama Oracle yang membuat server database 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 database.

Pengertian SQL

Structured Query Language (SQL) adalah sekumpulan perintah khusus yang digunakan untuk mengakses data dalam database relasional. SQL merupakan sebuah bahasa komputer yang mengikuti standar ANSI (American Nasional Standard Institute) yang digunakan dalam manajemen database relasional. Dengan SQL, kita dapat mengakses database, menjalankan query untuk mengambil data dari database, menambahkan data ke database, menghapus data di dalam database, dan mengubah data di dalam database. Saat ini hampir semua server database yang ada mendukung SQL untuk melakukan manajemen datanya.


 Terdapat 3 (tiga) jenis perintah SQL, yaitu DDL, DML dan DCL. 
1. DDL atau Data Definition Language 

DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur database, dalam hal ini database dan table. Perintah SQL yang termasuk dalam DDL antara lain : 
  • CREATE
CREATE ialah membuat membuat. Pertanyaannya sekarang ialah apa yang akan kita buat dengan perintah CREATE tersebut. Maka adapun yang kita buat dengan perintah tersebut yakni perintah atau syntax untuk membuat database dan tabel baru.

1. Membuat database baru dengan perintah CREATE
Syntax-nya adalah sebagai berikut:

CREATE DATABASE nama_database;
Contoh:

CREATE DATABASE Penjualan;
2. Membuat tabel baru dengan perintah CREATE
Syntax-nya adalah sebagai berikut:

CREATE TABLE nama_table(
field1 tipe(panjang),
field2 tipe(panjang),
...
fieldn tipe(panjang),
PRIMARY KEY (field_key)
);
Contoh: 

CREATE TABLE pelanggan ( 
id_pelanggan varchar(5) NOT NULL, 
nm_pelanggan varchar(30) NOT NULL, 
alamat text, 
telepon varchar (20), 
email varchar (50), PRIMARY KEY(id_pelanggan) 
);


   Contoh : CREATE DATABASE [Nama databas];
   CREATE DATABASE db_siswa;
  
Create Database terbagi atas 5 jenis,yaitu:
  • CREATE FUNCTION digunakan untuk membuat function dalam database
Contoh : Membuat fungsi untuk jumlah data dari setiap kelas
DELIMITER $$
CREATE FUNCTION sf_tampil_siswa_kelas (p_kelas int) RETURNS INT DETERMINISTIC
BEGIN
DECLARE jml INT;
SELECT COUNT(*) AS jml_kelas INTO jml FROM tbl_siswa WHERE kelas = p_kelas;
RETURN jml;
END$$
DELIMITER ;

  • CREATE INDEX digunakan untuk membuat index 
         Contoh : CREATE UNIQUE INDEX index_name
         ON table_name ( column1, column2,...);
        CREATE UNIQUE INDEX index_siwa
        ON tbl_siswa(nis);

  • CREATE PROCEDURE digunakan untuk membuat prosedure dalama database


Contoh :
CREATE PROCEDURE nama_procedure (parameter_procedure())routine_body
Membuat prosedure untuk menampilkan siswa
delimiter //
create procedure show_siswas()
    -> begin
    -> select*from tbl_siswa;
    -> end //
Memanggilnya dengan mengetikan perintah
   Call show_siswas()

  • CREATE TABLE digunakan untuk membuat tabel baru
              Contoh : create table tbl_siswa (nis char(7),nama char(30), alamat char(50));
  • CREATE TRIGGER digunakan untuk membuat trigger (perintah sql yang dikerjakan otomatis pada even tertentu)
  • CREATE VIEW digunakan untuk membuat rutin laporan

  • ALTER (untuk menghapus basis data, table atau index)  ALTER DATABASE digunakan untuk mengubah pengaturan database
    Contoh : ALTER {DATABASE | SCHEMA} [db_name]
    alter_specification ...
    alter_specification:
    [DEFAULT] CHARACTER SET [=] charset_name
    | [DEFAULT] COLLATE [=] collation_name

Macam-macam Alter,Yaitu:

  • ALTER FUNCTION digunakan untuk mengubah function
  • ALTER PROCEDURE digunakan untuk mengubah prosedure
  • ALTER TABLE digunakan untuk mengubah susunan dan pengaturan tabel
           Contoh : ALTER TABLE siswa ADD nomor_ktp AFTER nama_siswa ;
  •     ALTER VIEW digunakan untuk mengubah pengaturan laporan

Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat. Pekerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.
  • RENAME TABLE digunakan untuk mengubah nama table

·         DROP : Perintah ini digunakan untuk menghapus database dan tabel.

           Contoh : drop database nama database;

Macam-macam Drop,yaitu:
·         DROP FUNCTION digunakan untuk menghapus function
Contoh  : DROP FUNCTION nama_funcion;
·         DROP INDEX digunakan untuk menghapus index
Contoh : DROP INDEX nama_indexs ON name_tabel;
·         DROP PROCEDURE digunakan untuk procedure
Contoh : DROP PROCEDURE nama_procedure;
·         DROP TABLE digunakan untuk menghapus table
Contoh : DROP TABLE nama_tabel;
·         DROP TRIGGER digunakan untuk menghapus trigger
DROP VIEW digunakan untuk menghapus format laporan

2. DML atau Data Manipulation Language 

DML merupakan perintah SQL yang berhubungan dengan manipulasi atau pengolahan data atau record dalam table. Perintah SQL yang termasuk dalam DML antara lain : 
Select
Perintah ini digunakan untuk mengambil data atau menampilkan data dari satu tabel atau beberapa tabel dalam relasi. Data yang diambil dapat kita tampilkan dalam layar prompt MySQL secara langsung maupun ditampilkan pada tampilanaplikasi. ontoh : SELECT nama_kolom1, nama_kolom2,... FROM nama_tabel;
SELECT nama_kolom1, nama_kolom2,... FROM nama_tabel WHERE kondisi; ( kondisi misal alamat = banjarmasin )
INSERT 
Perintah ini digunakan untuk menyisipkan atau memasukkan data baru ke dalam tabel. Penggunaannya setelah database dan tabel selesai dibuat. Contoh : insert into mahasiswa (npm,nama,alamat) values (‘0401034’,’ Abdul Malik Ikhsan’,’Jalan Jakarta No.28’);
UPDATE 
 Perintah ini digunakan untuk memperbarui data lama menjadi data terkini. Jika Anda memiliki data yang salah atau kurang up to date dengan kondisi sekarang, maka dapat diubah isi datanya menggunakan perintah UPDATE.
Contoh : update mahasiswa set npm=’001’ where npm=’0401034’;
DELETE
 Perintah ini digunakan untuk menghapus data dari tabel. Biasanya data yang dihapus merupakan data yang sudah tidak diperlukan lagi. Pada saat menghapus data, perintah yang telah dijalankan tidak dapat digagalkan, sehingga data yang telah hilang tidak dapat dikembalikan lagi. Contoh : delete from mahasiswa (menghapus semua isi tabel mahasiswa )
delete from mahasiswa where npm = ‘001’; ( hanya menghapus isi tabel mahasiswa dengan NPM 001 )
Contoh:
 INSERT
INSERT INI nama_table (field1, field2,…) values
(nilai_field1,nilai_field2,…);
INSERT INTO nama_table values
(nilai_field1,nilai_field2,…);
SELECT
SELECT field1, field2,…FROM nama_table;
perintah diatas akan menampilkan semua data yang terdapat pada field yang ditentukan. untuk melihat semua data yang ada pada table, sintak penulisannya adalah:
SELECT * FROM nama_table;
UPDATE
UPDATE nama_table SET nama_field1=nilai_baru1, nama_field=nilai_field2,…. WHERE kriteria;
DELETE
DELETE FROM nama_table WHERE kriteria;

3. DCL atau Data Control Language 
DCL merupakan perintah SQL yang berhubungan dengan pengaturan hak akses user, baik terhadap server, database, table maupun field. Perintah SQL yang termasuk dalam DCL antara lain : 

GRAND 
Perintah ini digunakan untuk memberikan hak/ijin akses oleh administrator (pemilik utama) server kepada user (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.


Share this article :

Post a Comment

 
Support : Creating Website | Johny Template | Mas Template
Copyright © 2011. Rienie Aniez - All Rights Reserved
Template Created by Creating Website Published by Mas Template
Proudly powered by Blogger