Metode Kloning (ADO)
Membuat objek Recordset duplikat dari objek Recordset yang sudah ada. Secara opsional, menentukan bahwa kloning bersifat baca-saja.
Sintaks
Set rstDuplicate = rstOriginal.Clone (LockType)
Tampilkan Nilai
Mengembalikan referensi objek Recordset .
Parameter
rstDuplicate
Variabel objek yang mengidentifikasi objek Recordset duplikat yang akan dibuat.
rstOriginal
Variabel objek yang mengidentifikasi objek Recordset yang akan diduplikasi.
LockType
Pilihan. Nilai LockTypeEnum yang menentukan jenis kunci Recordset asli, atau Recordset baca-saja. Nilai yang valid adalah adLockUnspecified atau adLockReadOnly.
Keterangan
Gunakan metode Kloning untuk membuat beberapa objek Recordset duplikat, terutama jika Anda ingin mempertahankan lebih dari satu rekaman saat ini dalam kumpulan rekaman tertentu. Menggunakan metode Kloning lebih efisien daripada membuat dan membuka objek Recordset baru yang menggunakan definisi yang sama dengan aslinya.
Properti Filter dari Recordset asli, jika ada, tidak akan diterapkan ke kloning. Atur properti Filter dari Recordset baru untuk memfilter hasilnya. Cara paling sederhana untuk menyalin nilai Filter yang ada adalah dengan menetapkannya secara langsung, sebagai berikut.
rsNew.Filter = rsOriginal.Filter
Catatan saat ini dari kloning yang baru dibuat diatur ke rekaman pertama.
Perubahan yang Anda buat pada satu objek Recordset terlihat di semua kloningnya terlepas dari jenis kursornya. Namun, setelah Anda menjalankan Kueri Ulang pada Recordset asli, kloning tidak akan lagi disinkronkan ke aslinya.
Menutup Recordset asli tidak menutup salinannya, juga tidak menutup salinan yang menutup salinan asli atau salinan lainnya.
Anda hanya dapat mengkloning objek Recordset yang mendukung marka buku. Nilai marka buku dapat dipertukarkan; artinya, referensi bookmark dari satu objek Recordset mengacu pada rekaman yang sama di salah satu kloningnya.
Beberapa peristiwa Recordset yang dipicu juga akan terjadi di semua klon Recordset . Namun, karena rekaman saat ini dapat berbeda antara Recordset yang dikloning, peristiwa mungkin tidak valid untuk kloning. Misalnya, jika Anda mengubah nilai bidang, peristiwa WillChangeField akan terjadi di Recordset yang diubah dan di semua kloning. Parameter Bidang dari peristiwa WillChangeField dari Recordset kloning (di mana perubahan tidak dilakukan) akan merujuk ke bidang rekaman kloning saat ini, yang mungkin merupakan rekaman yang berbeda dari rekaman recordset asli saat ini di mana perubahan terjadi.
Tabel berikut ini menyediakan daftar lengkap semua peristiwa Recordset . Ini menunjukkan apakah mereka valid dan dipicu untuk kloning recordset apa pun yang dihasilkan dengan menggunakan metode Kloning .
Kejadian | Dipicu dalam kloning? |
---|---|
EndOfRecordset | Tidak |
FetchComplete | Tidak |
FetchProgress | Tidak |
FieldChangeComplete | Ya |
MoveComplete | Tidak |
RecordChangeComplete | Ya |
RecordsetChangeComplete | Tidak |
WillChangeField | Ya |
WillChangeRecord | Ya |
WillChangeRecordset | Tidak |
WillMove | Tidak |
Berlaku Untuk
Lihat juga
Contoh Metode Kloning (Visual Basic)
Contoh Metode Kloning (VBScript)
Contoh Metode Kloning (VC++)