Pola active record
Artikel atau sebagian dari artikel ini mungkin diterjemahkan dari Active record pattern di en.wikipedia.org. Isinya masih belum akurat, karena bagian yang diterjemahkan masih perlu diperhalus dan disempurnakan. Jika Anda menguasai bahasa aslinya, harap pertimbangkan untuk menelusuri referensinya dan menyempurnakan terjemahan ini. Anda juga dapat ikut bergotong royong pada ProyekWiki Perbaikan Terjemahan. (Pesan ini dapat dihapus jika terjemahan dirasa sudah cukup tepat. Lihat pula: panduan penerjemahan artikel) |
artikel ini perlu dirapikan agar memenuhi standar Wikipedia. |
Dalam ilmu komputer, pola active record (en:active record pattern) adalah sebuah pola desain (en:design pattern) yang sering ditemui dalam aplikasi enterprise.
Active record adalah salah satu pendekatan untuk membaca data dari sebuah basis data. Sebuah tabel atau view dibungkus ke dalam sebuah kelas sedemikian sehingga sebuah instansi objek terikat dengan satu baris tunggal dalam tabel. Setelah objek dibuat, sebuah baris baru ditambahkan pada tabel pada saat disimpan. Objek-objek yang dimuat mendapatkan informasi tentang dirinya dari basis data; ketika sebuah objek diubah, baris yang berkaitan dalam tabel juga diubah. Kelas pembungkus mengimplementasikan metode-metode aksesor untuk setiap kolom di dalam tabel atau view.
Implementasi Active Record dapat ditemukan dalam banyak sekali framework pemrograman, termasuk di antaranya dalam framework web CakePHP dan Ruby on Rails. Sebagai contoh, jika ada sebuah tabel onderdil
dengan kolom id
(kunci primer berseri), nama
(tipe varchar) dan harga
(tipe money atau presisi double), dan terdapat sebuah kelas Onderdil
, kode berikut:
a = Onderdil.new a.nama = "Contoh onderdil" a.harga = 123.45 a.save
akan menyimpan sebuah baris baru dalam basis data dengan nilai-nilai yang diberikan, kurang-lebih sama dengan perintah SQL berikut ini:
INSERT INTO onderdil (nama, harga) values ('Contoh onderdil', 123.45);
Sebaliknya, kelas dapat digunakan untuk melakukan kueri ke basis data:
namaalat = "kotakperkakas" b = Onderdil.find(:first,:conditions => [ "nama = ?", namaalat ])
akan membuat sebuah objek dari baris pertama basis data yang kolom nama
-nya sama dengan isi variabel Ruby namaalat
, kurang-lebih sama dengan perintah SQL:
SELECT * from onderdil WHERE nama = 'kotakperkakas' LIMIT 1;
Selain cara tersebut, kode di atas dapat diperpendek menjadi:
b = Onderdil.find_by_name("kotakperkakas")
Pranala luar
sunting- (Inggris) Halaman Active Record dari katalog Patterns of Enterprise Application Architecture oleh Martin Fowler
- (Inggris) Castle Project Active Record Diarsipkan 2007-05-14 di Wayback Machine. sebuah implementasi Microsoft .NET
- (Inggris) SubSonic - Zero Code DAL implementasi Microsoft .NET lainnya
Artikel ini tidak memiliki kategori atau memiliki terlalu sedikit kategori. Bantulah dengan menambahi kategori yang sesuai. Lihat artikel yang sejenis untuk menentukan apa kategori yang sesuai. Tolong bantu Wikipedia untuk menambahkan kategori. Tag ini diberikan pada Februari 2023. |