Lewati ke konten utama
menjadi.dev
Chapter 4.4 Data & Storage Menengah

SQL Dasar: SELECT, INSERT, UPDATE, DELETE

Operasi CRUD dasar dalam SQL

Tujuan Pembelajaran

  • Bisa menulis query SQL dasar
  • Memahami konsep CRUD

Analogi

Diagram

      SQL = Perintah ke Admin Arsip:

SELECT = 'Ambilkan file dari lemari A'
INSERT = 'Simpan file baru'
UPDATE = 'Ganti isi file nomor 5'
DELETE = 'Buang file nomor 5'
    

SQL seperti perintah ke admin arsip

Penjelasan Konsep

SQL

(Structured Query Language) adalah bahasa standar untuk berkomunikasi dengan database. Bayangkan database seperti lemari arsip besar yang terorganisir — SQL adalah bahasa yang kamu gunakan untuk menyuruh admin arsip mengambil, menyimpan, mengubah, atau menghapus file dari lemari tersebut.

Mengapa SQL Penting?

Hampir setiap aplikasi web modern menyimpan datanya di database. Saat kamu mendaftar akun, data username dan passwordmu disimpan. Saat kamu belanja online, daftar produk, keranjang belanja, dan riwayat transaksimu tersimpan rapi di database. SQL adalah kunci untuk mengakses dan mengelola semua data tersebut.

Tanpa SQL, aplikasi tidak bisa menyimpan informasi secara permanen. Semua data akan hilang saat halaman ditutup.

Empat Operasi Dasar SQL (CRUD)

SELECT — Membaca Data (Read)

SELECT adalah perintah paling sering digunakan. Ini seperti menyuruh admin arsip, “Ambilkan daftar semua produk dari rak A.” Kamu bisa memilih kolom mana yang ingin dilihat, memfilter hasil dengan WHERE, mengurutkan dengan ORDER BY, dan menghitung ringkasan dengan GROUP BY.

INSERT — Menambah Data (Create)

INSERT menyimpan data baru ke tabel. Seperti menyuruh admin, “Simpan dokumen baru ini di lemari B.” Kamu tentukan tabel tujuan, kolom yang diisi, dan nilai-nilanya.

UPDATE — Mengubah Data (Update)

UPDATE memperbarui data yang sudah ada. Seperti menyuruh, “Ganti isi file nomor 5 dengan versi terbaru ini.” Sangat penting untuk selalu pakai WHERE clause agar tidak mengubah semua baris secara tidak sengaja!

DELETE — Menghapus Data (Delete)

DELETE menghapus data dari tabel. Seperti menyuruh, “Buang file nomor 5 dari lemari.” Sama seperti UPDATE, selalu gunakan WHERE clause untuk menghapus hanya data yang dimaksud.

Relasi Antar Tabel dengan JOIN

Dalam aplikasi nyata, data tidak disimpan dalam satu tabel besar. Data dipecah ke beberapa tabel yang saling terhubung. JOIN memungkinkan kamu menggabungkan data dari beberapa tabel sekaligus dalam satu query.

Tips Keamanan: SQL Injection

Selalu gunakan parameterized queries saat memasukkan data user ke SQL. Jangan pernah menggabungkan string langsung ke query — ini adalah celah keamanan paling umum dalam aplikasi web.

Contoh Kode

sql
-- Lihat semua produk
SELECT * FROM products;

-- Cari produk elektronik
SELECT name, price FROM products WHERE category = 'elektronik';

-- Urutkan termurah
SELECT name, price FROM products ORDER BY price ASC;

-- Hitung per kategori
SELECT category, COUNT(*) as total
FROM products GROUP BY category;

-- Tambah produk
INSERT INTO products (name, price, stock)
VALUES ('Mouse Logitech', 150000, 50);

-- Update stok
UPDATE products SET stock = stock - 1 WHERE id = 5;

-- Hapus produk
DELETE FROM products WHERE id = 10;

-- JOIN
SELECT o.id, u.name, o.total
FROM orders o
JOIN users u ON o.user_id = u.id;

Penjelasan Kode

Baris 2: SELECT *. Baris 5: WHERE filter. Baris 8: ORDER BY. Baris 11-12: GROUP BY. Baris 15-16: INSERT. Baris 19: UPDATE. Baris 25-27: JOIN.

Prompt AI

Jelaskan kenapa WHERE clause penting di UPDATE dan DELETE. Apa itu SQL injection?

Pertanyaan Reflektif

Coba buat database SQLite. Buat tabel products, masukkan 10 data, coba semua query.