Memahami Query SQL yang Digunakan dalam CRUD

Dalam pengembangan aplikasi berbasis web, CRUD merupakan salah satu konsep penting untuk mengelola data. CRUD terdiri dari Create, Read, Update, dan Delete, yaitu operasi untuk menambahkan, membaca, mengubah, dan menghapus data.

Agar operasi tersebut dapat dilakukan pada database, programmer membutuhkan SQL (Structured Query Language). SQL digunakan untuk berkomunikasi dengan database dan menjalankan berbagai perintah terhadap data.

Beberapa query SQL yang paling sering digunakan dalam CRUD adalah:

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

Memahami keempat query tersebut akan membantu pemula ketika membuat aplikasi yang terhubung dengan database.

Apa Itu Query SQL?

Query SQL adalah perintah yang digunakan untuk berinteraksi dengan database.

Dengan query SQL, programmer dapat melakukan berbagai aktivitas seperti membuat tabel, menambahkan data, mengambil data, mengubah data, hingga menghapus data.

Contoh sederhana:

SELECT * FROM barang;

Query tersebut digunakan untuk mengambil seluruh data dari tabel barang.

SQL digunakan oleh berbagai sistem database, seperti MySQL, PostgreSQL, Microsoft SQL Server, dan SQLite, meskipun terdapat perbedaan sintaks tertentu di antara masing-masing sistem.

Hubungan SQL dengan CRUD

CRUD dan SQL memiliki hubungan yang sangat erat.

Operasi CRUDQuery SQLFungsi
CreateINSERTMenambahkan data
ReadSELECTMembaca data
UpdateUPDATEMengubah data
DeleteDELETEMenghapus data

Jadi, ketika membuat fitur CRUD, programmer biasanya menggunakan query SQL yang sesuai dengan operasi yang ingin dilakukan.

1. Query INSERT untuk Create

Create digunakan untuk menambahkan data baru ke database.

SQL menggunakan INSERT INTO untuk melakukan operasi tersebut.

Misalnya terdapat tabel barang dengan kolom:

id
nama_barang
harga
stok

Query untuk menambahkan data:

INSERT INTO barang (nama_barang, harga, stok)
VALUES ('Keyboard', 150000, 10);

Setelah query dijalankan, data baru akan tersimpan di tabel barang.

Contoh hasilnya

IDNama BarangHargaStok
1Keyboard15000010

INSERT dengan beberapa data

Kita juga dapat memasukkan beberapa data sekaligus:

INSERT INTO barang (nama_barang, harga, stok)
VALUES
('Mouse', 75000, 20),
('Monitor', 1500000, 5);

Dengan begitu, dua data dapat ditambahkan dalam satu query.

2. Query SELECT untuk Read

Setelah data tersimpan, kita membutuhkan query untuk mengambil atau menampilkannya.

Operasi tersebut menggunakan SELECT.

Untuk mengambil seluruh data:

SELECT * FROM barang;

Tanda * berarti mengambil seluruh kolom dari tabel tersebut.

Memilih kolom tertentu

Tidak selalu harus mengambil semua kolom. Kita dapat menentukan kolom yang dibutuhkan.

SELECT nama_barang, harga
FROM barang;

Query tersebut hanya mengambil kolom nama_barang dan harga.

Mengambil data berdasarkan kondisi

Misalnya hanya ingin menampilkan barang dengan stok kurang dari 10:

SELECT *
FROM barang
WHERE stok < 10;

Kata kunci WHERE digunakan untuk memberikan kondisi pada query.

Mengurutkan data

Data juga dapat diurutkan menggunakan ORDER BY.

SELECT *
FROM barang
ORDER BY harga DESC;

Query tersebut mengurutkan barang berdasarkan harga dari terbesar ke terkecil.

3. Query UPDATE untuk Mengubah Data

Update digunakan ketika kita ingin mengubah data yang sudah tersimpan.

Misalnya harga keyboard berubah menjadi Rp175.000.

UPDATE barang
SET harga = 175000
WHERE id = 1;

Query tersebut mengubah harga barang yang memiliki id 1.

Mengubah beberapa kolom

Kita juga dapat mengubah beberapa data sekaligus.

UPDATE barang
SET harga = 175000,
    stok = 15
WHERE id = 1;

Harga dan stok barang dengan ID 1 akan diperbarui.

Mengapa WHERE penting?

Perhatikan query berikut:

UPDATE barang
SET harga = 175000;

Karena tidak menggunakan WHERE, perintah tersebut dapat mengubah harga seluruh data dalam tabel barang.

Karena itu, ketika melakukan Update berdasarkan data tertentu, pastikan kondisi WHERE sudah benar.

4. Query DELETE untuk Menghapus Data

Operasi Delete digunakan untuk menghapus data dari database.

Contohnya:

DELETE FROM barang
WHERE id = 1;

Query tersebut akan menghapus data dengan ID 1.

Mengapa WHERE juga penting pada DELETE?

Perhatikan:

DELETE FROM barang;

Tanpa kondisi WHERE, perintah tersebut dapat menghapus seluruh data dalam tabel.

Oleh karena itu, programmer perlu berhati-hati ketika menggunakan DELETE.

Untuk aplikasi yang digunakan pengguna secara langsung, sebaiknya proses penghapusan juga dilengkapi konfirmasi.

Contoh CRUD Lengkap

Agar lebih mudah dipahami, berikut contoh sederhana menggunakan tabel barang.

Create

INSERT INTO barang (nama_barang, harga, stok)
VALUES ('Laptop', 8000000, 5);

Read

SELECT * FROM barang;

Update

UPDATE barang
SET stok = 10
WHERE id = 1;

Delete

DELETE FROM barang
WHERE id = 1;

Keempat query tersebut mewakili operasi utama dalam CRUD.

Menggunakan WHERE dalam CRUD

WHERE merupakan salah satu bagian SQL yang sangat penting ketika membuat CRUD.

Contohnya:

SELECT * FROM barang
WHERE id = 5;

Query tersebut hanya mengambil barang dengan ID 5.

Pada Update:

UPDATE barang
SET stok = 20
WHERE id = 5;

Hanya barang dengan ID 5 yang diperbarui.

Pada Delete:

DELETE FROM barang
WHERE id = 5;

Hanya barang dengan ID 5 yang dihapus.

Karena itu, WHERE sering digunakan ketika aplikasi harus melakukan operasi terhadap data tertentu.

Query CRUD dengan PHP

Pada aplikasi PHP, query SQL biasanya dijalankan melalui koneksi database.

Contoh sederhana menggunakan MySQLi:

<?php

$koneksi = mysqli_connect(
    "localhost",
    "root",
    "",
    "db_crud"
);

$query = "SELECT * FROM barang";

$result = mysqli_query($koneksi, $query);

while ($data = mysqli_fetch_assoc($result)) {
    echo $data['nama_barang'];
    echo "<br>";
}
?>

Pada contoh tersebut, PHP menjalankan query SELECT untuk mengambil data dari tabel barang.

Kemudian hasilnya diproses dan ditampilkan pada halaman web.

Mengapa Prepared Statement Penting?

Ketika data berasal dari pengguna, sebaiknya jangan langsung memasukkan nilai tersebut ke dalam query SQL.

Contoh yang lebih aman adalah menggunakan prepared statement.

Misalnya menggunakan MySQLi:

$stmt = mysqli_prepare(
    $koneksi,
    "INSERT INTO barang (nama_barang, harga, stok)
     VALUES (?, ?, ?)"
);

mysqli_stmt_bind_param(
    $stmt,
    "sii",
    $nama_barang,
    $harga,
    $stok
);

mysqli_stmt_execute($stmt);

Prepared statement membantu memisahkan struktur query SQL dari data yang diberikan pengguna dan merupakan salah satu praktik penting untuk membantu mencegah SQL injection.

Kesalahan yang Sering Dilakukan Pemula

Ketika belajar query SQL untuk CRUD, beberapa kesalahan yang sering terjadi antara lain:

1. Salah Menulis Nama Tabel

Misalnya tabel sebenarnya bernama barang, tetapi query menggunakan produk.

2. Salah Menulis Nama Kolom

Pastikan nama kolom pada query sesuai dengan struktur tabel database.

3. Lupa Menggunakan WHERE

Hal ini sangat berisiko ketika menjalankan UPDATE atau DELETE.

4. Kesalahan Tipe Data

Kolom angka sebaiknya menerima data numerik, sedangkan kolom teks menggunakan tipe data yang sesuai.

5. Tidak Melakukan Validasi

Data dari formulir pengguna sebaiknya diperiksa sebelum dimasukkan ke database.

Alur Query SQL dalam CRUD

Secara sederhana, proses CRUD dapat digambarkan seperti berikut:

Pengguna
   ↓
Formulir / Halaman Web
   ↓
PHP
   ↓
Query SQL
   ↓
Database MySQL
   ↓
Hasil
   ↓
Halaman Web

Misalnya pengguna menekan tombol Tambah Data.

Form Tambah
     ↓
    PHP
     ↓
   INSERT
     ↓
   MySQL
     ↓
Data Tersimpan

Sedangkan ketika pengguna ingin melihat data:

Halaman Data
     ↓
    PHP
     ↓
   SELECT
     ↓
   MySQL
     ↓
Data Ditampilkan

Alur tersebut menjadi dasar dari banyak aplikasi berbasis database.

Tips Belajar Query SQL untuk CRUD

Jika masih pemula, sebaiknya pelajari query CRUD secara bertahap:

  1. Pahami struktur tabel database.
  2. Pelajari INSERT.
  3. Pelajari SELECT.
  4. Pelajari UPDATE.
  5. Pelajari DELETE.
  6. Pelajari penggunaan WHERE.
  7. Pelajari ORDER BY dan LIMIT.
  8. Pelajari JOIN untuk menghubungkan beberapa tabel.
  9. Pelajari prepared statement saat menghubungkan SQL dengan PHP.

Dengan latihan bertahap, penggunaan query SQL akan menjadi lebih mudah dipahami.

Kesimpulan

Query SQL yang digunakan dalam CRUD terdiri dari empat perintah utama, yaitu INSERT, SELECT, UPDATE, dan DELETE.

INSERT digunakan untuk menambahkan data, SELECT untuk mengambil data, UPDATE untuk mengubah data, sedangkan DELETE digunakan untuk menghapus data.

Keempat query tersebut merupakan dasar penting dalam pembuatan aplikasi berbasis database. Jika sudah memahami cara kerja masing-masing query serta penggunaan WHERE, pemula akan memiliki dasar yang kuat untuk membuat sistem CRUD menggunakan PHP dan MySQL.

Leave a Reply

Your email address will not be published. Required fields are marked *