Recordset: Marka Buku dan Posisi Absolut (ODBC)
Topik ini berlaku untuk kelas MFC ODBC.
Saat menavigasi melalui kumpulan rekaman, Anda sering kali memerlukan cara untuk kembali ke rekaman tertentu. Marka buku dan posisi absolut rekaman menyediakan dua metode tersebut.
Topik ini menjelaskan:
Marka buku di MFC ODBC
Bookmark secara unik mengidentifikasi rekaman. Saat Anda menavigasi melalui kumpulan rekaman, Anda tidak selalu dapat mengandalkan posisi absolut rekaman karena rekaman dapat dihapus dari kumpulan rekaman. Cara yang dapat diandalkan untuk melacak posisi rekaman adalah dengan menggunakan marka bukunya. Kelas CRecordset
menyediakan fungsi anggota untuk:
Mendapatkan marka buku rekaman saat ini, sehingga Anda dapat menyimpannya dalam variabel (GetBookmark).
Bergerak cepat ke rekaman tertentu dengan menentukan marka bukunya, yang Anda simpan sebelumnya dalam variabel (SetBookmark).
Contoh berikut mengilustrasikan cara menggunakan fungsi anggota ini untuk menandai rekaman saat ini dan kemudian kembali ke dalamnya:
// rs is a CRecordset or
// CRecordset-derived object
CDBVariant varRecordToReturnTo;
rs.GetBookmark( varRecordToReturnTo );
// More code in which you
// move to other records
rs.SetBookmark( varRecordToReturnTo );
Anda tidak perlu mengekstrak jenis data yang mendasar dari objek Kelas CDBVariant. Tetapkan nilai dengan GetBookmark
dan kembali ke marka buku tersebut dengan SetBookmark
.
Catatan
Bergantung pada driver ODBC dan jenis recordset Anda, marka buku mungkin tidak didukung. Anda dapat dengan mudah menentukan apakah marka buku didukung dengan memanggil CRecordset::CanBookmark. Selain itu, jika bookmark didukung, Anda harus secara eksplisit memilih untuk mengimplementasikannya dengan menentukan CRecordset::useBookmarks
opsi dalam fungsi anggota CRecordset::Open . Anda juga harus memeriksa persistensi marka buku setelah operasi recordset tertentu. Misalnya, jika Anda Requery
sebuah recordset, marka buku mungkin tidak lagi valid. Hubungi CDatabase::GetBookmarkPersistence untuk memeriksa apakah Anda dapat dengan aman memanggil SetBookmark
.
Posisi Absolut di MFC ODBC
Selain marka buku, kelas CRecordset
memungkinkan Anda untuk mengatur rekaman saat ini dengan menentukan posisi ordinal. Ini disebut posisi absolut.
Catatan
Penempatan absolut tidak tersedia pada kumpulan rekaman hanya-terusan. Untuk informasi selengkapnya tentang kumpulan rekaman hanya-terusan, lihat Recordset (ODBC).
Untuk memindahkan penunjuk rekaman saat ini menggunakan posisi absolut, panggil CRecordset::SetAbsolutePosition. Saat Anda meneruskan nilai ke SetAbsolutePosition
, rekaman yang sesuai dengan posisi ordinal tersebut menjadi rekaman saat ini.
Catatan
Posisi absolut rekaman berpotensi tidak dapat diandalkan. Jika pengguna menghapus rekaman dari kumpulan rekaman, posisi ordinal dari rekaman berikutnya akan berubah. Marka buku adalah metode yang direkomendasikan untuk memindahkan rekaman saat ini. Untuk informasi selengkapnya, lihat Marka Buku di MFC ODBC.
Untuk informasi selengkapnya tentang navigasi recordset, lihat Recordset: Scrolling (ODBC).
Baca juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk