Dalam pemrograman komputer, fungsi create, read, update, delete adalah empat operasi dasar (tindakan) penyimpanan persisten. Istilah CRUD juga terkadang digunakan untuk menggambarkanantarmuka pengguna yang memfasilitasi pengguna untuk melihat, mencari, dan mengubah informasi menggunakan fiturformulir dan laporan berbasis komputer.
Sumber: Lihat artikel asli di Wikipedia
Dalam pemrograman komputer, fungsi create, read, update, delete (CRUD; buat, baca, perbarui, hapus) adalah empat operasi dasar (tindakan) penyimpanan persisten.[1] Istilah CRUD juga terkadang digunakan untuk menggambarkanantarmuka pengguna yang memfasilitasi pengguna untuk melihat, mencari, dan mengubah informasi menggunakan fiturformulir dan laporan berbasis komputer.
Terminologi CRUD kemungkinan pertama kali dipopulerkan pada tahun 1983 [2] oleh James Martin dalam bukunya Managing the data-base environment.
Data ditempatkan di suatu lokasi/area pada suatu mekanisme penyimpanan.
Bersama-sama keempat operasi ini membentuk operasi dasar manajemen penyimpanan yang dikenal sebagai CRUD: create, read, update, delete.
Akronim CRUD merujuk pada operasi utama yang diimplementasikan dalam basis data. Setiap operasi dalam akronim dipetakan ke pernyataan Bahasa Kueri Terstruktur (SQL) standar.[3]
| Operasi CRUD | Sintaks SQL |
|---|---|
| Create | INSERT |
| Read | SELECT |
| Update | UPDATE |
| Delete | DELETE |
Meskipun basis data relasional merupakan bagian dari lapisan persisten umum dalam aplikasi perangkat lunak, terdapat banyak lapisan persisten lainnya. Fungsionalitas CRUD diimplementasikan sebagai contoh dengan basis data dokumen, basis data objek, basis data XML, berkas teks, atau berkas biner.
Beberapa sistem mahadata tidak mengimplementasikan UPDATE, tetapi hanya memiliki INSERT (penjurnalan) yang diberi tanda waktu, yang menyimpan versi objek yang selalu terbaru pada setiap saat.
Akronim CRUD juga muncul dalam diskusi RESTful API . Setiap operasi dapat dipetakan ke metode Hypertext Transfer Protocol (HTTP):
| Operasi CRUD | Metode HTTP |
|---|---|
| Create | POST, PUT jika kita tidak memiliki `id` atau `uuid` |
| Read | GET |
| Update | PUT untuk mengganti, PATCH untuk memodifikasi |
| Delete | DELETE |
Dalam HTTP, metode GET (baca), PUT (buat dan perbarui), POST (buat - jika kita tidak memiliki `id` atau `uuid`), dan DELETE (hapus) termasuk operasi CRUD karena metode-metode tersebut memiliki semantik manajemen penyimpanan, dalam artian, metode-metode tersebut memungkinkan agen pengguna (user agent) untuk secara langsung menyuntingsumber daya target.[4] Metode POST, di sisi lain, adalah operasi proses yang memiliki semantik spesifik target-sumber daya yang biasanya melampaui cakupan operasi CRUD.[5]
Operasi CRUD juga relevan pada tingkat antarmuka pengguna di sebagian besar aplikasi. Misalnya, dalam perangkat lunak buku alamat, unit penyimpanan dasar adalah entri kontak individual. Minimalnya, perangkat lunak harus memungkinkan pengguna untuk:[6]
Karena operasi ini sangat mendasar, operasi tersebut sering didokumentasikan dan dijelaskan di bawah satu judul komprehensif seperti "manajemen kontak" atau "manajemen dokumen" secara umum.
Variasi lain dari operasi CRUD meliputi:
POST only becomes an issue when it is used in a situation for which some other method is ideally suited: e.g., retrieval of information that should be a representation of some resource (GET), complete replacement of a representation (PUT), or any of the other standardized methods that tell intermediaries something more valuable than "this may change something." The other methods are more valuable to intermediaries because they say something about how failures can be automatically handled and how intermediate caches can optimize their behavior. POST does not have those characteristics, but that doesn't mean we can live without it. POST serves many useful purposes in HTTP, including the general purpose of "this action isn't worth standardizing."