tugas 3

05 October 2012 10:56:44 Dibaca : 504 Kategori : 921411022

 SQL merupakan singkatan dari Structured Query Language. SQL atau juga sering disebut sebagai query merupakan suatu bahasa (language) yang digunakan untuk mengakses database. SQL dikenalkan pertama kali dalam IBM pada tahun 1970 dan sebuah standar ISO dan ANSII ditetapkan untuk SQL. Standar ini tidak tergantung pada mesin yang digunakan (IBM, Microsoft atau Oracle). Hampir semua software database mengenal atau mengerti SQL. Jadi, perintah SQL pada semua software database hampir sama.
Terdapat 3 (tiga) jenis perintah SQL, yaitu DDL, DML dan DCL.

 1. DDL ( Data Definition Language ) adalah sebuah perintah SQL yang berhubungan dengan pendefinisian suatu database dan tabel. Beberapa perintah dasar yang termasuk dalam DDL antara lain.

1. CREATE

Fungsi : Command CREATE ini berfungsi untuk membuat sebuah database ataupun membuat sebuah table yang berada di dalam database.

Syntax : CREATE database nama_database;

Parameter   : -

Contoh : CREATE database apotik;

Penjelasan : perintah CREATE diatas akan membuat sebuah database dengan nama apotik.

 

2. SHOW

Fungsi : Command SHOW ini berfungsi untuk menampilkan database ataupun table yang telah kita buat sebelumnya.

Syntax : SHOW databases;

Parameter : -

Contoh : SHOW databases;

Penjelasan : perintah SHOW diatas akan memperlihatkan semua database yang ada.

 

3. USE

Fungsi : Command  USE ini berfungsi untuk membuka/mengaktifkan/memasuki database yang telah kita buat. Setelah kita masuk kedalam database yang telah kita buat, barulah kita bisa memanipulasi data yang ada, termasuk untuk membuat table didalam database tersebut.

Syntax : USE nama_database;

Parameter : -

Contoh : USE apotik;

Penjelasan : perintah diatas akan mengaktifkan database dengan nama apotik sehingga kita dapat memanipulasi data yang ada.

 

4. ALTER

Fungsi : Command ALTER ini berfungsi untuk mengubah struktur dari suatu table. Mengubah disini tidak hanya memperbaharui struktur table yang ada, tetapi juga mengubah nama field, menambahkan primary key, mengubah tipe field, maupun menghapus field yang telah dibuat sebelumnya.

Syntax : ALTER TABLE nama_tabel parameter_option;

Parameter : add, modify, drop

Contoh : ALTER TABLE obat ADD harga int (6);

Penjelasan : perintah diatas akan menambahkan field harga kedalam tabel obat.

 

5. DROP

Fungsi: Command DROP ini berfungsi untuk menghapus, baik database, table, maupun field yang telah diinputkan ke dalam table.

Syntax : DROP TABLE nama_tabel;

Parameter : -

Contoh : DROP TABLE supplier;

Penjelasan : perintah diatas akan menghapus tabel supplier pada database apotik.

 

2. DML

Untuk melakukan manipulasi atau pengolahan data dalam suatu table digunakan perintah DML. Macam-macam dari perintah DML adalah:

1. Insert : untuk memasukkan / menambahkan data baru

INSERT INTO nama_table (nama_kolom) values (values);

contoh –>

insert into mahasiswa (nim, nama, alamat, jurusan) values (12345,’andhi’,’yogya’,’informatika’);

keterangan:

insert into –> perintah untuk menambah data

mahasiswa –> nama table yang akan ditambahkan datanya

nim, nama, alamat, jurusan –> nama kolom dari table mahasiswa

12345,’andhi’,’yogya’,’informatika’ –> data yang dimasukkan ke dalam table mahasiswa (sesuai dengan urutan kolom yang telah disebutkan sebelumnya)

nb: untuk data yang bertipe karakter harus diapit tanda petik tunggal (‘ ‘)

2. Select : untuk menyeleksi / memilih data yang akan ditampilkan

SELECT * | {nama_kolom} FROM nama_table [WHERE condition];

contoh –>

select nim, nama, jurusan from mahasiswa;

keterangan: perintah di atas menampilkan data nim, nama dan jurusan pada table mahasiswa.

nb: untuk menampilkan semua kolom dapat menggunakan tanda (*) contoh: select * from mahasiswa, sedangkan jika ada syarat/kondisi untuk data yang akan ditampilkan dapat menggunakan klausa where contoh: select nim, nama from mahasiswa where nama=’andhi’;

3. Update : untuk membperbaharui data yang sudah ada

UPDATE nama_table SET nama_kolom = value [WHERE condition];

contoh –>

update mahasiswa set jurusan =’kedokteran’ where nama=’andhi’;

keterangan: perintah di atas akan mengubah data mahasiswa yang bernama andhi dengan mengganti data pada kolom jurusan, yang sebelumnya informatika menjadi kedokteran.

Nb: kita dapat mengubah lebih dari satu kolom dalam satu perintah update contoh: update mahasiswa set nim=45678, jurusan=’kedokteran’ where nama=’andhi’;

Perhatian : Jika kita tidak menggunakan klausa where maka semua baris pada kolom yang akan di update akan berubah.

4. Delete : untuk menghapus baris data

DELETE [FROM] nama_table [ WHERE condition];

contoh –>

delete mahasiswa where nama=’andhi’;

keterangan: perintah di atas menghapus baris data pada tabel mahasiswa yang bernaa andhi

Perhatian : Jika tidak menggunakan klausa where maka semua baris data pada tabel tersebut akan dihapus.

 

3. DCL atau

Data Control Language merupakan perintah SQL yang berhubungan dengan pengaturan hak akses user MySQL, baik terhadap server, database, tabel maupun field. Perintah SQL yang termasuk dalam DCL antara lain :
+ GRANT
Grant digunakan untuk mengatur izin akses pada kolom yang ditentukan saja. Konfigurasi izin akses columns_priv ini lebih sedikit dibandingkan dengan tabel tables_priv. Hak akses yang diizinkan meliputi select, insert, update dan references.
Contoh penggunaan izin akses kolom :
grant update(nama) on nm_db.nm_tbl to nm_user@localhost identified by ‘nm_passwd’;
Dari perintah diatas user tersebut akan bisa melakukan perintah update pada kolom nama saja. Seperti contoh dibawah :
update nm_tbl set nama=’nm_baru’ where id=23;
Selain penggunaan diatas kita bisa juga melakukan penampilan untuk kolom tertentu dan ada juga kolom yang bisa di update juga. Maka kita bisa menggunakan kombinasi seperti ini.
grant select(id,nama,alamat,usia), update(alamat,usia) on nm_db.nm_tbl to nm_user@localhost identified by ‘nm_passwd’;
+ REVOKE
Revoke merupakan kebalikan dari perintah grant yaitu menghapus atau mencabut kembali izin akses user MySQL yang sebelumnya telah diberikan. Tingkat pilihan yang dapat digunakan juga sama dengan perintah grant sehingga semua izin akses dengan grant dapat dicabut kembali.
Menghapus Akses Penuh
revoke all on *.* from nm_user@localhost identified by ‘nm_passwd’;
Perintah diatas membuat salah satu user tidak mempunyai izin akses lagi. Meski sudah dicabut aksesnya user tersebut masih dapat login ke database MySQL tapi tidak perlu khawatir karena user tersebut tidak bisa berbuat apa-apa lagi.
Menghapus Akses Database
revoke all on nm_db.nm_tbl from nm_user@localhost identified by ‘nm_passwd’;
Perintah diatas izin akses user pada tabel tertentu telah dicabut sehingga tidak bisa mengakses kembali.
Menghapus Akses Kolom
revoke update(nama) on nm_db.nm_tbl from nm_user@localhost identified by ‘nm_passwd’;
Peintah diatas akan mencabut akses untuk kolom yang telah ditentukan sebelumnya.