Apa Itu CRUD? Create, Read, Update, Delete Dijelaskan
CRUD adalah singkatan dari create, read, update, dan delete, empat hal dasar yang dilakukan aplikasi dengan data yang tersimpan. Menambahkan pelanggan baru adalah create, melihat daftar pelanggan adalah read, mengubah nomor telepon mereka adalah update, dan menghapus mereka adalah delete. Sebagian besar aplikasi bisnis, seperti CRM, sistem booking, pelacak inventaris, dan panel admin, pada dasarnya adalah CRUD dengan aturan dan tata letak yang baik di atasnya.
Mengapa ini penting saat membangun dengan AI
CRUD adalah kosakata yang mengubah ide aplikasi yang samar menjadi permintaan yang presisi. "Aplikasi untuk mengelola supplier kami" membuat AI harus menebak-nebak. "Buat, tampilkan, ubah, dan hapus supplier, dengan field berikut" memberi tahu persis layar, operasi database, dan route server apa yang harus dibangun.
Ini juga memberi kamu daftar periksa untuk pengujian. Untuk setiap jenis record di aplikasimu, kamu bisa mengajukan empat pertanyaan: bisakah saya menambahkannya, melihatnya, mengubahnya, dan menghapusnya, dan apakah hanya orang yang tepat yang bisa melakukan masing-masing? Banyak aplikasi buatan AI yang bisa membuat record tetapi tidak bisa mengeditnya, atau membiarkan siapa saja menghapus apa saja.
Analogi sehari-hari: kotak kartu resep
Bayangkan sekotak kartu resep di rak dapur.
- Create: tulis kartu resep baru dan simpan.
- Read: buka-buka kotaknya, atau ambil satu kartu untuk lasagna.
- Update: coret "200g keju" dan tulis "250g".
- Delete: keluarkan kartu dan buang.
Sekarang tambahkan aturan: hanya kepala koki yang boleh membuang kartu, setiap kartu harus punya judul, dan tidak seorang pun boleh menyimpan dua kartu dengan nama yang sama. Itulah aplikasi CRUD dengan validasi dan izin, dan itulah yang menjadi sebagian besar aplikasi nyata.
Bagaimana CRUD muncul di setiap lapisan
Setiap operasi muncul di layar, di server, dan di database. Melihatnya berdampingan menjelaskan banyak hal tentang cara aplikasi dibangun.
| Operasi | Di layar | Permintaan API (REST) | SQL di database |
|---|---|---|---|
| Create | Tombol "Baru" dan form | POST /api/suppliers | INSERT |
| Read | Daftar dengan pencarian dan filter; halaman detail | GET /api/suppliers dan GET /api/suppliers/42 | SELECT |
| Update | Form "Edit" atau pengeditan langsung di baris | PUT atau PATCH /api/suppliers/42 | UPDATE |
| Delete | Tombol "Hapus" dengan konfirmasi | DELETE /api/suppliers/42 | DELETE (atau menandai baris sebagai terhapus) |
Layar adalah frontend, permintaan API adalah cara frontend berbicara dengan backend, dan SQL adalah cara backend berbicara dengan database. Jika istilah-istilah ini masih baru, lihat apa itu API dan apa itu database.
Contoh nyata: pelacak peminjaman peralatan
Sebuah departemen media sekolah meminjamkan kamera dan mikrofon kepada siswa, dan terus kehilangan jejak barang-barang itu. Mereka menginginkan aplikasi sederhana.
Record-nya. Ada dua jenis: peralatan (nama, jenis, nomor seri, kondisi) dan peminjaman (peralatan mana, siswa mana, tanggal keluar, tanggal jatuh tempo, tanggal kembali).
CRUD untuk peralatan:
- Create: staf menambahkan kamera baru beserta nomor serinya. Aturan: nomor seri harus unik.
- Read: daftar semua peralatan, bisa difilter berdasarkan jenis dan "tersedia sekarang"; halaman detail yang menampilkan riwayat peminjaman satu barang.
- Update: ubah kondisi menjadi "perlu perbaikan".
- Delete: biasanya bukan penghapusan sungguhan. Jika kamera dengan 30 riwayat peminjaman dihapus, record peminjaman itu kehilangan tautannya. Sebagai gantinya, tandai sebagai "dipensiunkan" sehingga hilang dari daftar yang tersedia tetapi riwayatnya tetap ada. Ini disebut soft delete.
CRUD untuk peminjaman:
- Create: memeriksa barang keluar untuk seorang siswa. Aturan: barang yang sedang dipinjam tidak bisa dipinjamkan lagi.
- Read: "peminjaman terlambat", yaitu daftar di mana tanggal jatuh tempo sudah lewat dan belum ada tanggal kembali.
- Update: mencatat tanggal kembali ketika barang dikembalikan.
- Delete: hanya staf, untuk peminjaman yang dimasukkan karena salah.
Izin. Siswa hanya bisa membaca apa yang tersedia; hanya staf yang bisa membuat, mengubah, atau menghapus. Pemeriksaan ini dijalankan di server, bukan sekadar menyembunyikan tombol.
Itulah keseluruhan aplikasinya. Bagian yang menarik, seperti tidak ada peminjaman ganda, daftar terlambat, dan riwayat per barang, adalah aturan dan query di atas CRUD biasa.
Istilah penting
- Record (baris): satu item, misalnya satu supplier atau satu peminjaman.
- Entitas / resource: jenis record, misalnya "supplier". Setiap entitas biasanya punya tabelnya sendiri dan kumpulan layar CRUD sendiri.
- Validasi: pemeriksaan input, misalnya field wajib, email yang valid, atau jumlah yang positif. Lakukan di form untuk kenyamanan dan di server untuk keamanan.
- Soft delete: menandai record sebagai terhapus atau diarsipkan alih-alih menghilangkannya, sehingga riwayat dan tautan tetap ada.
- Pagination: menampilkan daftar panjang sedikit demi sedikit per halaman, agar aplikasi tetap cepat.
- Audit log: catatan tentang siapa yang membuat, mengubah, atau menghapus apa, dan kapan.
- Panel admin: kumpulan layar CRUD untuk staf mengelola data aplikasi.
Kesalahan dan kesalahpahaman umum
- Melupakan salah satu dari empat. Aplikasi sering kali hanya punya create dan read tanpa edit, sehingga setiap salah ketik harus dihapus dan diisi ulang. Periksa keempatnya untuk setiap entitas.
- Penghapusan yang merusak sesuatu. Menghapus pelanggan yang punya invoice bisa meninggalkan invoice yatim atau menghapus riwayat. Putuskan per entitas: blokir penghapusan, soft delete, atau hapus juga record terkait.
- Izin hanya di antarmuka. Menyembunyikan tombol Hapus tidak menghentikan seseorang mengirim permintaan
DELETE. Server harus memeriksa siapa yang meminta. - Mengubah berdasarkan ID tanpa memeriksa kepemilikan. Jika pengguna A bisa mengedit
/api/notes/42dengan mengganti angka di URL, ia bisa mengedit catatan pengguna B. Setiap update dan delete harus memastikan record itu milik pemohon. - Tidak ada konfirmasi saat menghapus. Satu ketukan yang salah tidak boleh menghancurkan data. Sediakan langkah konfirmasi, atau undo.
- "CRUD berarti dasar, jadi tidak layak dibangun." Banyak produk bernilai adalah aplikasi CRUD yang lebih cocok dengan alur kerja dibanding alat generik.
Yang bisa kamu minta dari AI builder
Gunakan pola ini untuk setiap entitas, satu per satu:
Buat fitur suppliers dengan daftar, create, edit, dan delete. Field: nama (wajib), email kontak (email yang valid), telepon, kategori (salah satu dari: makanan, kemasan, pembersih), catatan. Tampilan daftar dengan pencarian nama dan filter kategori, 20 per halaman. Minta konfirmasi sebelum menghapus; jika supplier punya pesanan, arsipkan alih-alih menghapus. Hanya staf yang login yang bisa membuat, mengedit, atau mengarsipkan — terapkan ini di server.
Lalu uji keempat operasi itu, sebagai pengguna yang berhak dan sebagai seseorang yang seharusnya tidak punya akses. Setelah satu entitas berjalan, tambahkan entitas berikutnya. Cara membangun internal tool menunjukkan bagaimana layar CRUD menjadi aplikasi admin lengkap, dan apa itu Postgres menjelaskan database tempat sebagian besar aplikasi ini berada.
Aplikasi CRUD di Mythex
Aplikasi CRUD adalah salah satu hal yang paling baik dikerjakan oleh AI app builder, dan Mythex tidak berbeda. Minta di chat untuk entitas dan field-fieldnya, lalu Mythex menambahkan database Postgres ke project, membuat tabelnya, dan membangun layar daftar, form, serta detail di preview live; setelah itu kamu bisa menjalankan /test untuk memeriksa alurnya. Dokumentasi memiliki resep aplikasi CRUD dengan starter prompt, dan pembuat internal tool serta template dashboard adalah tempat yang baik untuk memulai.
Pertanyaan
Apa kepanjangan dari CRUD?
CRUD adalah singkatan dari create, read, update, dan delete: menambahkan record baru, melihat record, mengubah record, dan menghapus record. Hampir setiap aplikasi yang menyimpan data dibangun dari empat operasi ini.
Apa itu aplikasi CRUD?
Aplikasi CRUD adalah aplikasi yang tugas utamanya mengelola record melalui form, daftar, dan halaman detail, misalnya CRM, pelacak inventaris, admin booking, atau back office job board. Sebagian besar internal tool dan panel admin adalah aplikasi CRUD.
Bagaimana CRUD berhubungan dengan REST API?
Dalam REST API yang umum, create memakai permintaan POST, read memakai GET, update memakai PUT atau PATCH, dan delete memakai DELETE. Backend kemudian menjalankan operasi database yang sesuai: INSERT, SELECT, UPDATE, atau DELETE.
Apakah aplikasi CRUD terlalu sederhana untuk bernilai?
Tidak. Banyak perangkat lunak bisnis yang berguna adalah CRUD dengan aturan, izin, dan laporan yang baik. Nilainya ada pada pemodelan data yang baik dan kecocokan dengan alur kerja, bukan pada teknologi yang tidak biasa.