Tugas 3
1) Pengertian Date Definition Language (DDL)
Statement DDL adalah perintah-perintah yang digunakan untuk menjelaskan objek dari database. Dengan kata lain DDL digunakan untuk mendefinisikan kerangka database.
Statement DDL :
Create database drop database
Create table drop table alter table
Create index drop index
Create view drop view
Contoh Penerapan :
Create database : untuk membuat database.
Syntax : CREATE DATABASE nama_db;
Contoh : CREATE DATABASE Perkuliahan;
Create table : untuk membuat table.
Syntax : CREATE TABLE nama_tabel
(nama_kolom1, type_kolom1,
nama_kolom2, type_kolom2,…);
Contoh : CREATE TABLE MHS
(NPM char(8) not null,Nama char(25) not null,Alamat char(30) not null);
Ket : Not null bersifat optional.
Create index : untuk membuat index.
Syntax : CREATE [UNIQUE] INDEX nama_index ON
nama_tabel (nama_kolom);
Contoh : CREATE INDEX KRSx ON KRS(Kd_mk);
Ket : Spesifikasi unique akan menolak key yang sama dalam file.
Create view : untuk membuat view.
Syntax : CREATE VIEW view_name [(column1, column2,… )]
AS SELECT statement FROM table_name
[WITH CHECK OPTION];
Contoh : CREATE VIEW MHSv AS SELECT * FROM MHS;
Ket : View_name : nama view yang akan dibuat.
Column : nama atribut untuk view.
Statement : atribut yang akan dipilih dari table basis data.
Table_name : nama table basis data.
Drop database : untuk menghapus database
Syntax : Drop database nama_db;
Contoh : Drop database Perkuliahan;
Drop table : untuk menghapus tabel
Syntax : Drop table nama_table;
Contoh : Drop table MHS;
Drop index : untuk menghapus index
Syntax : Drop index nama_index;
Contoh : Drop index KRSx;
Drop view : untuk menghapus view
Syntax : Drop view nama_view;
Contoh : Drop view MHSv;
Alter table : untuk mengubah table
Syntax : ALTER TABLE nama_table
ADD (nama_kolom_baru type_kolom
[BEFORE nama_kolom])
MODIFY (nama_kolom_lama type_kolom)
DROP (nama_kolom_lama type_kolom);
Contoh : ALTER TABLE MHS ADD (JKEL char(1));
2) Pengertian Date Manipulation Language (DML)
Statement DML adalah perintah-perintah yang digunakan untuk mengoperasikan atau memanipulasi isi database. SQL menyediakan 4 perintah DML yaitu Select, insert, update, dan delete.
INSERT
Syntax : INSERT INTO nama_table [(nama_kolom,..)] VALUES
(data1,…);
Contoh : INSERT INTO MKUL VALUES (”KK222”,”BERKAS
Akses”,2);
Atau
INSERT INTO MKUL (KDMK,MTKUL,SKS) VALUES
(”KK222”,”BERKAS Akses”,2);
UPDATE
Syntax : UPDATE nama_tabel SET nama_kolom=ekspresi
WHERE kondisi;
Contoh :
1. Ubah alamat menjadi depok untuk mahasiswa yang memiliki NPM ”12100748”
UPDATE MHS SET Alamat=”Depok” WHERE
NPM=”12100748”;
2. Ubah nilai mid dengan menambahkan nilai 10 untuk kode
mata kuliah ”KK021”
UPDATE NILAI SET MID+10 WHERE KDMK=”KK021”;
DELETE
Syntax : DELETE FROM nama_table [WHERE kondisi];
Contoh : DELETE FROM NILAI WHERE NPM=”12100748” AND
KDMK=”KK021’;
SELECT
Syntax : SELECT [(DISTINCT)] nama_kolom
FROM nama_table
[WHERE kondisi]
[GROUP BY nama_kolom]
[HAVING kondisi]
[ORDER BY nama_kolom [ASC/DESC]];
Contoh:
Satu table (simple query)
a Tampilkan semua data mahasiswa
SELECT NPM,Nama,Alamat,Kota FROM MHS;
atau SELECT * FROM MHS;
b Tampilkan mata kuliah yang SKSnya 2
SELECT MTKUL FROM MKUL WHERE SKS=2;
c Tampilkan semua data nilai untuk yang memperoleh nilai mid sekurang-kurangnya 60 atau nilai final diatas 75
SELECT * FROM NILAI WHERE MID>=60 OR FINAL>75
d Tampilkan npm, kode mata kuliah dan nilai mid untuk nilai mid antara 70 sampai dengan 100
SELECT NPM,KDMK,MID FROM NILAI WHERE BETWEEN 70 AND 100
e Tampilkan nama mahasiswa yang diawali denga huruf ”P”
SELECT Nama FROM MHS WHERE Nama LIKE ”P%”;
f Tampilkan nama mahasiswa untuk nama mahasiswa yang tidak mengandung unsur huruf ”a”
SELECT Nama FROM MHS WHERE Nama NOT LIKE
”%a%”
g. Tampilkan nama mahasiswa untuk nama mahasiswa yang karakter keduanya huruf ”u”
SELECT Nama FROM MHS WHERE Nama LIKE ”_U%”;
h. Tampilkan alamat mahasiswa, dimana alamat yang sama hanya ditampilkan satu kali saja
SELECT DISTINCT Alamat FROM MHS;
i. Tampilkan semua data mahasiswa dengan nama terurut dari ”z” ke ”a”
SELECT * FROM MHS ORDER BY Nama DESC;
j. Tampilkan alamat dan jumlah mahasiswa yang bertempat tinggal dialamat tersebut
SELECT Alamat, COUNT(*) FROM MHS GROUP BY
Alamat;
k. Tampilkan alamat dan jumlah mahasiswa yang bertempat tinggal pada alamat yang jumlahnya lebih dari 1
SELECT Alamat, COUNT (*) FROM MHS GROUP BY
ALAMAT HAVING COUNT (*) > 1;
l. Tampilkan nilai mid tertinggi dan terendah untuk mata kuliah ”KD132”
SELECT MAX(MID), MIN(MID) FROM NILAI WHERE
KDMK=”KD132”;
m. Tampilkan rata-rata dan jumlah nilai final mata kuliah ”KD132”
SELECT AVG(FINAL), SUM(FINAL) FROM NILAI WHERE
KDMK=”KD132”;
Contoh lebih dari 1 tabel
1. Tampilkan nama mahasiswa yang mempunyai nilai mid < 60
SELECT NAMA FROM MHS WHERE NPM IN
(SELECT NPM FROM NILAI WHERE MID < 60);
JOIN : penggabungan kolom
SELECT NAMA FROM MHS, NILAI
WHERE MHS.NPM = NILAI.NPM AND NILAI.MID 75
SELECT NPM FROM MHS WHERE NAMA = ”BUDI”
UNION SELECT NPM FROM NILAI WHER FINAL > 75;