SQL – Data Manipulation Language (DML)

image

1. Pendahuluan

1.1 Apa itu DML?

DML (Data Manipulation Language) adalah bagian SQL untuk:

menambah, membaca, mengubah, dan menghapus data dalam tabel.

Operasi utama DML dikenal sebagai CRUD:

  • Create → INSERT
  • Read → SELECT
  • Update → UPDATE
  • Delete → DELETE

2. Struktur Tabel Contoh

Gunakan contoh tabel:

Tabel: mahasiswa

nimnamaprodiangkatan

3. INSERT (Menambah Data)

3.1 Sintaks Dasar

INSERT INTO mahasiswa
VALUES ('A001', 'Budi', 'Informatika', 2023);

3.2 INSERT dengan Kolom Spesifik

INSERT INTO mahasiswa (nim, nama)
VALUES ('A002', 'Siti');

3.3 INSERT Banyak Data

INSERT INTO mahasiswa VALUES
('A003','Andi','SI',2022),
('A004','Rina','TI',2021);

4. SELECT (Menampilkan Data)

4.1 SELECT Semua Data

SELECT * FROM mahasiswa;

4.2 SELECT Kolom Tertentu

SELECT nim, nama FROM mahasiswa;

4.3 SELECT dengan WHERE

SELECT * FROM mahasiswa
WHERE prodi = 'Informatika';

4.4 Operator WHERE

OperatorFungsi
=Sama
> <Banding
ANDDan
ORAtau
LIKEPola
INDaftar
BETWEENRentang

4.5 LIKE (Pola)

SELECT * FROM mahasiswa
WHERE nama LIKE 'A%';

4.6 ORDER BY

SELECT * FROM mahasiswa
ORDER BY nama ASC;

4.7 LIMIT

SELECT * FROM mahasiswa
LIMIT 3;

5. UPDATE (Mengubah Data)

5.1 Sintaks Dasar

UPDATE mahasiswa
SET prodi = 'Sistem Informasi'
WHERE nim = 'A001';

⚠️ Tanpa WHERE = semua data berubah!


5.2 Update Banyak Kolom

UPDATE mahasiswa
SET nama='Budi Santoso', angkatan=2024
WHERE nim='A001';

6. DELETE (Menghapus Data)

6.1 Hapus Data Spesifik

DELETE FROM mahasiswa
WHERE nim='A004';

6.2 Hapus Semua Data

DELETE FROM mahasiswa;

7. SELECT Lanjutan

7.1 DISTINCT

SELECT DISTINCT prodi FROM mahasiswa;

7.2 AGGREGATE FUNCTION

FungsiKegunaan
COUNTJumlah
SUMTotal
AVGRata-rata
MAXMaks
MINMin
SELECT COUNT(*) FROM mahasiswa;

7.3 GROUP BY

SELECT prodi, COUNT(*) 
FROM mahasiswa
GROUP BY prodi;

7.4 HAVING

SELECT prodi, COUNT(*) 
FROM mahasiswa
GROUP BY prodi
HAVING COUNT(*) > 2;

8. Subquery

SELECT * FROM mahasiswa
WHERE angkatan = (
  SELECT MAX(angkatan)
  FROM mahasiswa
);

9. JOIN (Integrasi Tabel)

Contoh:

Tabel mahasiswa & krs

SELECT m.nama, k.kode_mk
FROM mahasiswa m
JOIN krs k ON m.nim = k.nim;

10. TRANSAKSI DML

START TRANSACTION;
UPDATE mahasiswa SET prodi='TI' WHERE nim='A001';
ROLLBACK;

11. Best Practice DML

✔ Selalu pakai WHERE
✔ Backup sebelum UPDATE massal
✔ Gunakan LIMIT saat testing
✔ Jangan DELETE tanpa filter
✔ Gunakan SELECT dulu


12. Kesalahan Fatal Mahasiswa

❌ UPDATE tanpa WHERE
❌ DELETE semua data
❌ Salah tanda kutip
❌ Tidak cek hasil SELECT
❌ Salah tipe data


13. Studi Kasus Lengkap

Sistem Akademik

Tabel:

  • mahasiswa
  • dosen
  • matakuliah
  • krs

Query:
Tampilkan semua mahasiswa yang mengambil MK “BD01”.


14. Contoh Query Kasus

SELECT m.nama
FROM mahasiswa m
JOIN krs k ON m.nim = k.nim
WHERE k.kode_mk = 'BD01';

15. Latihan Praktikum

Latihan 1

Insert 10 data mahasiswa.

Latihan 2

Update prodi 2 mahasiswa.

Latihan 3

Tampilkan mahasiswa angkatan 2023.

Latihan 4

Hapus 1 data.


16. Evaluasi

PG:

Perintah untuk mengubah data:
a. INSERT
b. UPDATE ✅

Essay:

Jelaskan fungsi WHERE dalam UPDATE!


17. Capaian Pembelajaran (OBE)

Mahasiswa mampu:

  • Menggunakan INSERT
  • Menggunakan SELECT
  • Menggunakan UPDATE
  • Menggunakan DELETE
  • Mengolah data relasional

18. Posisi Materi di Kurikulum

Urutan ideal:

  1. DDL
  2. DML
  3. JOIN
  4. SUBQUERY
  5. VIEW
  6. STORED PROCEDURE

19. Standar Industri

Di dunia kerja:

  • 80% kerja backend = DML
  • Semua API → SELECT & INSERT
  • Bug fatal paling sering: UPDATE tanpa WHERE

20. Ringkasan Akhir

DML adalah inti pemrograman basis data. Mahasiswa yang menguasai SELECT, INSERT, UPDATE, dan DELETE berarti sudah siap mengolah data sistem nyata.