Stucture Query Language SQL
Pengertian SQL Merupakan bahasa query standar yang digunakan untuk mengakses basis data relasional Jenis SQL yaitu 1. interactive langsung dapat diperasikan 2. embedded disisip ke dalam sebuah program
Pengelompokan sql DDL drop create alter table DML insert select Update delete DCL grant revoke
Data definition language [ddl] perintah2 yang digunakan untuk mendefinisikan (menciptakan, tambah/mengubah/hapus) sturktur data/tabel Pembuatan Database create database nama_db; Contoh : buatlah database dengan nama praktikum create database praktikum; Pembuatan Tabel create table nama_tabel (nama_kolom1 jenis_kolom1, nama_kolom2 jenis_kolom2, ….) Contoh : buatlah tabel Nilai dgn kolom, npm, nama, lp, la create table nilai (npm char(8) not null, nama char (25), lp int(2), la int(2));
alter table nilai add(kelas char(5) before lp); Merubah Struktur Table alter table nama_tabel add (nama_kolom jenis_kolom) modify (nama_kolom jenis_kolom) drop (nama_kolom jenis_kolom); Contoh Tambahkan kolom kelas dengan panjang 5 karakter sebelum kolom lp alter table nilai add(kelas char(5) before lp); Ubahlah panjang kolom nama menjadi 30 karakter alter table nilai modify(nama char(30)); Hapus kolom kelas dari tabel nilai alter table nilai drop(kelas char(5));
Data manipulation language Merupakan perintah yang digunakan untuk memanipulasi database INSERT insert into nama tabel (nama_kolom1, nama_kolom2…) values (data1, data2…) contoh : 1. insert into nilai values(‘10111510’,’namira’,89,90); 2. insert into nilai (npm, lp, la) values(‘10111610’,80,60);
set nama_kolom = ekspresi where kondisi ; Contoh UPDATE update nama_tabel set nama_kolom = ekspresi where kondisi ; Contoh Ubahlah lp menjadi 80 untuk mahasiswa yang memiliki npm ‘10111456’ update nilai set lp=80 where npm =‘101111456’; Ubahlah lp menjadi 65 untuk mahasiswa kelas 1IA05 update nilai set lp=65 where kelas =“1IA05”;
delete from nama_tabel where kondisi; CONTOH Hapuslah mahasiswa yang mempunyai nama ‘aurel’ delete from nilai where nama=‘aurel’;
SELECT select [distinct] nama_kolom from nama_tabel; [where kondisi] [group by nama-kolom] [having kondisi] [order by nama_kolom [asc/des]]; CONTOH
Tabel mhs Tabel mkul KDMK MTKULIAH SKS KK021 P. Basis Data 2 KD132 SIM NPM NAMA ALAMAT 10296832 Nurhayati Jakarta 10296126 Astuti 31296500 Budi Depok 41296525 Prananingrum Bogor 50096487 Pipit Bekasi 21196353 quraish KDMK MTKULIAH SKS KK021 P. Basis Data 2 KD132 SIM 3 KU122 Pancasila
Tampilkan semua data mahasiswa Tabel nilai Tampilkan semua data mahasiswa Select npm,nama,alamat from mhs; Atau Select * from mhs; NPM KDMK MID FINAL 10296832 KK021 60 75 10296196 KD132 70 90 31296500 55 40 41296525 KU122 80 21196353 50097487 10296837 30
Tampilkan mata kuliah yang sks-nya 2 select mtkuliah from mkul where sks = 2; Hasil : Apa hasilnya? select * from nilai where mid >=60 or final <75; select npm, kdmk, mid from nilai where mid between 70 and 100; MTKULIAH P. Basis Data Pancasila
Tampilkan nama mahasiswa yang diawali dengan huruf ‘P’ Select nama from mhs where nama like ‘P%’; Tampilkan alamat mahasiswa, dimana alamat yang sama hanya ditampilkan satu kali saja. select distinct alamat from mhs; ALAMAT Jakarta Depok Bogor Bekasi
Tampilkan semua data dengan nama terurut dari z ke a Select * from mhs order by nama desc; Tampilkan alamat mahasiswa dan jumlah mahasiswa yang bertempat tinggal di alamat tersebut Select alamat, count(*) from mhs Group by alamat; Alamat Count(*) Jakarta 2 Depok 1 Bogor Bekasi
select alamat, count(*) from mhs group by alamat Tampilkan alamat dan jumlah mahasiswa yang bertempat tinggal pada alamat yang jumlahnya lebih dari satu select alamat, count(*) from mhs group by alamat having count (*) > 1; ALAMAT COUNT(*) Jakarta 2 Bogor
DATA CONTROL LANGUAGE Berisi perintah-perintah untuk mngendalikan pengaksesan data. GRANT memberikan kendali pada pengaksesan data Contoh: memberikan akses kepada aurel untuk memodifikasi data dari tabel nilai grant update on nilai to aurel; REVOKE mencabut kemampuan pengaksesan data Contoh : Mencabut hak menghapus data pada tabel nilai untuk toriq revoke delete on nilai from toriq;