MATERI KULIAH : BASIS DATA
Data Manipulation Language
DATA MANIPULATION LANGUAGE (DML)
Menambah Data Insert
Mengedit Data Update
Menghapus Data Delete
Menampilkan Data Select
NIM Nama Alamat
2514 Siska Yogya
2412 Mieta
Menambah Data
INSERT INTO nama_tabel
VALUES (nilai_1, nilai_2,..., nilai_n)
ATAU
INSERT INTO table_name (kolom_1, kolom_2,...,
Kolom_n)
VALUES (nilai_1, nilai_2,..., nilai_n);
Catatan
Field dengan konstraint NOT NULL wajib
diisi
Penulisan data dengan tipe angka tidak
diapit tanda petik
Penulisan data dengan tipe string atau
tanggal diapit tanda petik
Data pada tabel anak (foreign key) harus ada
di induknya
Contoh
INSERT INTO MAHASISWA VALUES (2001, 1,
'ANITA', 'MAGELANG', '1-JAN-85');
INSERT INTO MAHASISWA (THANG, NIM, NAMA)
VALUES (2005, 9, 'DAUD');
MENGUBAH DATA
UPDATE nama_tabel
SET
kolom_1 = nilai_baru_1,
kolom_2 = nilai_baru_2,
...
kolom_3 = nilai_baru_n
[WHERE kondisi]
MENGUBAH SEMUA BARIS, SATU KOLOM
Mengubah semua ThAng dengan 2003
UPDATE mahasiswa
SET ThAng = 2003;
MENGUBAH KOLOM TERTENTU UNTUK BARIS
TERTENTU
mengubah kolom nama menjadi Anita Marani
dalam tabel mahasiswa yang nim-nya = 200
UPDATE mahasiswa
SET nama = 'Anita Marani'
WHERE nim = 200;
MENGUBAH BEBERAPA KOLOM
SEKALIGUS
UPDATE Mahasiswa
SET
nama = 'Anita Mariana',
ThAng = 2000
WHERE nim = 200;
OPERATOR KONDISI
Operator Relasional (=, >, <, >=, <=, <>)
Operator Boolean (And, Or, Not)
UPDATE kelas
SET NIP = 1
WHERE KODE = 'P1'
AND NIP = 2
Between dan Not Between
UPDATE kelas
SET NIP = 1
WHERE idkelas BETWEEN 1 AND 3
OPERATOR KONDISI (CONT…)
In dan Not In
UPDATE kelas
SET NIP = 1
WHERE idkelas IN (1,2,3)
Is Null dan Is Not Null
UPDATE Mahasiswa
SET TGL = '21-Aug-89'
WHERE tgl IS NULL
OPERATOR KONDISI (CONT…)
Like dan Not Like
WildCard
% beberapa karakter sembarang
_ satu karakter sembarang
[] satu karakter sembarang dalam range
[^] satu karakter sembarang diluar range
Contoh Data : Erike, Mirna, Ani, Kaka, Ubaid
LIKE '%a' : Mirna, Kaka
LIKE '%a%' : Mirna, Kaka, Ubaid
LIKE '_a%' : Kaka
LIKE '%[a-k]a%' : Kaka
LIKE '%[^a-k]a%' : Mirna
Contoh Query:
UPDATE Mahasiswa
SET
Alamat = Null
WHERE Nama LIKE '%a%';
SYNTAX
DELETE FROM nama_tabel
[WHERE kondisi];
Contoh:
DELETE FROM mahasiswa
WHERE nama = 'ANITA';
CATATAN
Tanpa pemberian kondisi berarti
menghapus semua isi tabel
Kondisi Lihat Update
MENAMPILKAN DATA
Select *
From nama_tabel
[Where Kondisi] 16
[Order by Kolom_x]
Atau
Select Kolom_1,Kolom_2,..Kolom_n
From nama_tabel
[Where Kondisi]
[Order by Kolom_x]
CONTOH
Menampilkan semua data mahasiswa
SELECT * FROM MAHASISWA
Menampilkansemua data mahasiswa yang
alamatnya YOGYA
SELECT * FROM MAHASISWA
WHERE ALAMAT = 'YOGYA'
Menampilkan NIM dan Nama Semua
Mahasiswa
SELECT NIM, NAMA
FROM MAHASISWA
Menampilkan NIM danNama Semua
Mahasiswa yang Alamatnya Yogya
SELECT NIM, NAMA
FROM MAHASISWA
WHERE ALAMAT = 'YOGYA'
Menampilkan NIM dan Nama Mahasiswa yang
diurutkan berdasarkan Nama Ascending dan Alamat
Descending
SELECT NIM, NAMA
FROM MAHASISWA
ORDER BY NAMA, ALAMAT DESC
Menampilkan Nama dan Alamat Mahasiswa yang
namanya ada 'a', urut Alamat
SELECT NIM, NAMA
FROM MAHASISWA
WHERE NAMA LIKE '%a%'
ORDER BY ALAMAT
FUNGSI AGREGASI
Pengertian : Fungsi untuk mendapatkan
informasi dari sekumpulan data
Jenis
1. MAX : Nilai tertinggi
2. MIN : Nilai terendah
3. AVG : Rata-rata
4. SUM : Jumlahan data
5. COUNT : Jumlahan Item
SYNTAX
SELECT kolom_1, kolom_2, …, kolom_n
,avg|max|min|sum|Count(kolom_x)
FROM Nama_Tabel
[WHERE Kondisi]
GROUP BY kolom_1, kolom_2, …, kolom_n
HAVING Kondisi Fungsi
CATATAN
Fungsi
selain COUNT harus menyebutkan
nama kolom yang bertipe angka di dalam kolom
CONTOH
Jumlah Mahasiswa
SELECT count (*)
FROM Mahasiswa
atau
SELECT Count(Nim)
FROM Mahasiswa
Total Nilai NIM 4
SELECT Sum(Nilai)
FROM KRS
WHERE Nim = 4
Rata-rata Nilai untuk IdKelas 1
SELECT AVG(Nilai)
FROM KRS
WHERE IdKelas = 1
IdKelas dan Nilai Tertinggi pada KRS dikelompokkan
berdasarkan Kelas
SELECT IdKelas, Max(Nilai)
FROM KRS
GROUP BY IdKelas
Nilai
Terendah KRS dikelompokkan berdasarkan
NIM urut NIM Desc 25
SELECT NIM, Min(Nilai)
FROM KRS
GROUP BY NIM
ORDER BY NIM Desc
Nilai Rata-rata
KRS dari idkelas > 1
dikelompokkan berdasarkan NIM yang
jumlahan itemnya > 1 diurutkan
berdasarkan NIM
SELECT NIM, AVG(Nilai)
FROM KRS
WHERE IdKelas > 1
GROUP BY NIM
HAVING COUNT(*) > 1
ORDER BY NIM Desc
BENTUK RELASI
1. Mengubah semua data SKS pada tabel MATAKULIAH
menjadi 5
2. Mengubah semua data ThAng pada tabel MAHASISWA
menjadi 2005
3. Mengubah semua data ThAng pada tabel MAHASISWA menjadi 2004 dan
ALAMAT pada tabel MAHASISWA menjadi Yogya
4. Mengubah data SKS pada MATAKULIAH yang kode-nya berawalan huruf B
menjadi 3 (LIKE)
5. Mengubah data Nilai menjadi 2 pada KRS yang NIMnya 1, 3 atau 4 dan idKelasnya 1
6. Mengubah ThAng menjadi 2000 dan TGL menjadi NULL pada MAHASISWA
yang Namanya ada I nya dan huruf terakhir pada Alamatnya G
7. Hapus semua data pada tabel Matakuliah yang SKS nya
NULL
8. Hapus semua data pada tabel Matakuliah yang SKS nya 2
9. Hapus semua data pada tabel Kelas yang Kode-nya B1
atau NIP-nya 4
10. Hapus semua data pada tabel KRS yang NIM-nya bukan
1 dan Nilainya > 1
11. Hapus semua data pada tabel Mahasiswa yang alamatnya
Null dan Tglnya Null
12. Tambahkan data Mahasiswa :
a. NIM : 2; NAMA : GALIH; ThAng : 2003
b. NAMA : RATNA; NIM : 5; ALAMAT : Magelang
13. Tambahkan data Kelas :
IdKelas : 5; Kode : B3; NIP : 2
14. Menampilkan semua data matakuliah
15. Menampilkan Nama_matakuliah dari tabel
matakuliah yang sksnya 2 urut berdasarkan kode
16. Menampilkan nama dosen yang huruf akhirnya 'H'
17. Menampilkan semua data kelas yang kodenya > 'C'
18. Menampilkan semua data kelas yang idkelasnya >
2 dan NIP nya kurang dari 4 diurutkan
berdasarkan NIP desc dan IdKelas Asc
19. Menampilkan NIM, dan Nilai dari data KRS yang
nilainya tidak NULL dan IdKelas 1 urut
berdasarkan NIM
20. Jumlah Mahasiswa pada tabel Mahasiswa
dikelompokkan berdasarkan tahun
Angkatan Diurutkan berdasarkan Tahun
Angkatan Desc
21. Jumlah Nilai Pada KRS yang Nilainya
tidak NULL dan NIM > 1
22. Rata-rata Nilai Mahasiswa Dikelompokkan
Berdasarkan NIM yang TotalNilainya > 3
23. NIP tertinggi pada tabel Dosen yang
namanya mengandung huruf i
TUGAS
Buat Database dan tabel-tabel dengan DBMS
apapun dengan struktur seperti yang ada pada
slide 27 (untuk DBMS SQL Server, sudah
disiapkan script untuk membuat tabel pada File
Script_buat_tabel.txt)
Isi tabel dengan data seperti pada file
[Link]
Praktekan soal no 1 – 13
Reset data seperti semula
Praktekan soal no 14-23
Kumpulkan screenshoot bukti pengerjaannya