Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Merangkum objek himpunan baris OLE DB dan beberapa antarmuka terkait dan menyediakan metode manipulasi untuk data himpunan baris.
Sintaks
template <class TAccessor = CAccessorBase>
class CRowset
Parameter
Pengesuh
Kelas aksesor. Default adalah CAccessorBase.
Persyaratan
Tajuk: atldbcli.h
Anggota
Metode
| Nama | Deskripsi |
|---|---|
| AddRefRows | Menaikkan jumlah referensi yang terkait dengan baris saat ini. |
| Tutup | Merilis baris dan antarmuka saat ini IRowset . |
| Bandingkan | Membandingkan dua marka buku menggunakan IRowsetLocate::Compare. |
| CRowset | Membuat objek baru CRowset dan (opsional) mengaitkannya dengan antarmuka yang IRowset disediakan sebagai parameter. |
| Hapus | Menghapus baris dari set baris menggunakan IRowsetChange::D eleteRows. |
| TemukanBaris Berikutnya | Menemukan baris pencocokan berikutnya setelah bookmark yang ditentukan. |
| DapatkanPerkiraanPosisi | Mengembalikan perkiraan posisi baris yang sesuai dengan marka buku. |
| GetData | Mengambil data dari salinan baris himpunan baris. |
| DapatkanDataDi Sini | Mengambil data dari buffer yang ditentukan. |
| DapatkanData Asli | Mengambil data yang terakhir diambil dari atau dikirimkan ke sumber data, mengabaikan perubahan yang tertunda. |
| GetRowStatus | Mengembalikan status semua baris. |
| Sisipan | Membuat dan menyisipkan baris baru menggunakan IRowsetChange::InsertRow. |
| IsSameRow | Membandingkan baris yang ditentukan dengan baris saat ini. |
| PindahPertama | Memposisikan ulang lokasi pengambilan berikutnya ke posisi awal. |
| PindahTerakhir | Berpindah ke rekaman terakhir. |
| PindahSelanjutnya | Mengambil data dari baris berurutan berikutnya atau jumlah posisi tertentu di luar baris berikutnya. |
| Pindahsebelumnya | Berpindah ke rekaman sebelumnya. |
| PindahkanKeBookmark | Mengambil baris yang ditandai dengan marka buku atau baris pada offset tertentu dari marka buku tersebut. |
| Rasio Pindahkan | Mengambil baris mulai dari posisi pecahan dalam set baris. |
| Baris Rilis | Memanggil IRowset::ReleaseRows untuk merilis handel baris saat ini. |
| SetData | Mengatur nilai data dalam satu atau beberapa kolom baris menggunakan IRowsetChange::SetData. |
| Buka | Membatalkan perubahan apa pun yang dilakukan pada baris sejak pengambilan atau Pembaruan terakhir. |
| Pembaruan | Mengirimkan perubahan tertunda yang dilakukan ke baris saat ini sejak pengambilan atau pembaruan terakhir. |
| PerbaruiSemua | Mengirimkan perubahan tertunda yang dilakukan ke semua baris sejak pengambilan atau pembaruan terakhir. |
Keterangan
Di OLE DB, set baris adalah objek tempat program mengatur dan mengambil data.
Kelas ini tidak dimaksudkan untuk dibuat, melainkan diteruskan sebagai parameter templat ke CTable atau CCommand (CRowset adalah default).
CRowset::AddRefRows
Memanggil IRowset::AddRefRows untuk menambah (satu) jumlah referensi yang terkait dengan handel baris saat ini.
Sintaks
HRESULT AddRefRows() throw();
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini menaikkan jumlah referensi untuk handel baris saat ini. Panggil ReleaseRows untuk mengurangi jumlah. Baris yang dikembalikan oleh metode pemindahan memiliki jumlah referensi satu.
CRowset::Tutup
Merilis baris dan antarmuka IRowset saat ini.
Sintaks
void Close() throw();
Keterangan
Metode ini merilis semua baris yang saat ini ada di himpunan baris.
CRowset::Bandingkan
Membandingkan dua marka buku menggunakan IRowsetLocate::Compare.
Sintaks
HRESULT Compare(const CBookmarkBase& bookmark1,
const CBookmarkBase& bookmark2,
DBCOMPARE* pComparison) const throw();
Parameter
Bookmark1
[di] Marka buku pertama yang dibandingkan.
Marka buku2
[di] Bookmark kedua untuk dibandingkan.
Perbandingan
[out] Penunjuk ke hasil perbandingan.
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini memerlukan antarmuka IRowsetLocateopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetLocate ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
Untuk informasi tentang menggunakan marka buku di konsumen, lihat Menggunakan Bookmark.
CRowset::CRowset
Membuat objek baru CRowset dan (opsional) mengaitkannya dengan antarmuka IRowset yang disediakan sebagai parameter.
Sintaks
CRowset();
CRowset(IRowset* pRowset);
Parameter
pKumpulan baris
[di] Pointer ke antarmuka yang IRowset akan dikaitkan dengan kelas ini.
CRowset::D elete
Memanggil IRowsetChange::D eleteRows untuk menghapus baris saat ini dari set baris.
Sintaks
HRESULT Delete() const throw();
Tampilkan Nilai
HRESULT standar.
CRowset::TemukanNextRow
Menemukan baris pencocokan berikutnya setelah bookmark yang ditentukan.
Sintaks
HRESULT FindNextRow(DBCOMPAREOP op,
BYTE* pData,
DBTYPE wType,
DBLENGTH nLength,
BYTE bPrecision,
BYTE bScale,
BOOL bSkipCurrent = TRUE,
CBookmarkBase* pBookmark = NULL) throw();
Parameter
op
[di] Operasi yang digunakan dalam membandingkan nilai baris. Untuk nilai, lihat IRowsetFind::FindNextRow.
pData
[di] Penunjuk ke nilai yang akan dicocokkan.
wType
[di] Menunjukkan jenis data bagian nilai dari buffer. Untuk informasi tentang indikator jenis, lihat Jenis Data di Referensi Programmer OLE DB di Windows SDK.
nPanjang
[di] Panjangnya, dalam byte, dari struktur data konsumen yang dialokasikan untuk nilai data. Untuk detailnya, lihat deskripsi cbMaxLen dalam Struktur DBBINDING di Referensi Programmer OLE DB.
bPresisi
[di] Presisi maksimum yang digunakan saat mendapatkan data. Digunakan hanya jika wType DBTYPE_NUMERIC. Untuk informasi selengkapnya, lihat Konversi yang melibatkan DBTYPE_NUMERIC atau DBTYPE_DECIMAL di Referensi Programmer OLE DB.
bSkala
[di] Skala yang digunakan saat mendapatkan data. Digunakan hanya jika wType DBTYPE_NUMERIC atau DBTYPE_DECIMAL. Untuk informasi selengkapnya, lihat Konversi yang melibatkan DBTYPE_NUMERIC atau DBTYPE_DECIMAL di Referensi Programmer OLE DB.
bLewatiArus
[di] Jumlah baris dari marka buku untuk memulai pencarian.
pBookmark
[di] Marka buku untuk posisi untuk memulai pencarian.
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini memerlukan antarmuka IRowsetFindopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetFind ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
Untuk informasi tentang menggunakan marka buku di konsumen, lihat Menggunakan Bookmark.
CRowset::GetApproximatePosition
Mengembalikan perkiraan posisi baris yang sesuai dengan marka buku.
Sintaks
HRESULT GetApproximatePosition(const CBookmarkBase* pBookmark,
DBCOUNTITEM* pPosition,
DBCOUNTITEM* pcRows) throw();
Parameter
pBookmark
[di] Penunjuk ke bookmark yang mengidentifikasi baris yang posisinya akan ditemukan. NULL jika hanya jumlah baris yang diperlukan.
pPosisi
[out] Penunjuk ke lokasi tempat GetApproximatePosition mengembalikan posisi baris. NULL jika posisi tidak diperlukan.
pcRows
[out] Penunjuk ke lokasi tempat GetApproximatePosition mengembalikan jumlah total baris. NULL jika jumlah baris tidak diperlukan.
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini memerlukan antarmuka IRowsetScrollopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetScroll ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
Untuk informasi tentang menggunakan marka buku di konsumen, lihat Menggunakan Bookmark.
CRowset::GetData
Mengambil data dari salinan baris himpunan baris.
Sintaks
HRESULT GetData() throw();
HRESULT GetData(int nAccessor) throw();
Parameter
nAkses
[di] Nomor indeks (zero-offset) dari aksesor yang akan digunakan untuk mengakses data.
Tampilkan Nilai
HRESULT standar.
Keterangan
Jika Anda menentukan aksesor yang bukan autoaccessor di BEGIN_ACCESSOR, gunakan metode ini untuk mendapatkan data secara eksplisit dengan meneruskan nomor aksesor.
CRowset::GetDataHere
Mengambil data dari baris saat ini dan menempatkannya ke dalam buffer yang ditentukan.
Sintaks
HRESULT GetDataHere(int nAccessor,
void* pBuffer) throw();
Parameter
nAkses
[di] Nomor indeks aksesor yang digunakan untuk mengakses data.
Buffer pBuffer
[out] Buffer tempat menempatkan data untuk rekaman saat ini.
Tampilkan Nilai
HRESULT standar.
Keterangan
Untuk contoh cara menggunakan fungsi ini, lihat sampel MultiRead.
CRowset::GetOriginalData
IRowsetUpdate::GetOriginalData Panggilan untuk mengambil data yang terakhir diambil dari atau dikirimkan ke sumber data.
Sintaks
HRESULT GetOriginalData() throw();
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini mengambil data yang terakhir diambil dari atau ditransmisikan ke sumber data; ini tidak mengambil nilai berdasarkan perubahan yang tertunda.
Metode ini memerlukan antarmuka IRowsetUpdateopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetUpdate ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
CRowset::GetRowStatus
Mengembalikan status semua baris.
Sintaks
HRESULT GetRowStatus(DBPENDINGSTATUS* pStatus) const throw();
Parameter
pStatus
[out] Penunjuk ke lokasi tempat GetRowStatus mengembalikan nilai status. Lihat DBPENDINGSTATUS di Referensi Programmer OLE DB.
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini memerlukan antarmuka IRowsetUpdateopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetUpdate ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
CRowset::Sisipkan
Membuat dan menginisialisasi baris baru menggunakan data dari aksesor.
Sintaks
HRESULT Insert(int nAccessor = 0,
bool bGetHRow = false) throw();
Parameter
nAkses
[di] Jumlah aksesor yang digunakan untuk menyisipkan data.
bGetHRow
[di] Menunjukkan apakah handel untuk baris yang disisipkan diambil.
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini memerlukan antarmuka IRowsetChangeopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetChange ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
Sisipkan mungkin gagal jika satu atau beberapa kolom tidak dapat ditulis. Ubah peta kursor Anda untuk memperbaiki ini.
Contoh
Contoh berikut menunjukkan cara mengakses sumber data melalui set baris lalu menyisipkan string menggunakan tabel di set baris tersebut.
Pertama, buat kelas tabel dengan menyisipkan Objek ATL Baru ke dalam proyek Anda. Misalnya, klik kanan proyek di panel Ruang Kerja dan pilih Objek ATL Baru. Dari kategori Akses Data, pilih Konsumen. Buat objek konsumen jenis Tabel. (Memilih Tabel membuat set baris langsung dari tabel; memilih Perintah membuat set baris melalui perintah SQL.) Pilih sumber data, menentukan tabel untuk mengakses sumber data tersebut. Jika Anda memanggil objek konsumen CCustomerTable, Anda kemudian akan menerapkan kode penyisipan Anda sebagai berikut:
// Access the rowset using the wizard-generated class, CCustomerTable
CCustomerTable rs; // Your CTable-derived class
// Insert a customer
// Note that for fixed-length fields such as billing ID it isn't necessary
// to set the length
rs.m_BillingID = 5002;
rs.m_dwBillingIDStatus = DBSTATUS_S_OK;
_tcscpy_s(rs.m_ContactFirstName, sizeof(rs.m_ContactFirstName) / sizeof(TCHAR),
_T("Malcolm"));
rs.m_dwContactFirstNameLength = 7;
rs.m_dwContactFirstNameStatus = DBSTATUS_S_OK;
_tcscpy_s(rs.m_L_Name, sizeof(rs.m_L_Name) / sizeof(TCHAR), _T("Reynolds"));
rs.m_dwL_NameLength = 8;
rs.m_dwContactFirstNameStatus = DBSTATUS_S_OK;
rs.m_CustomerID = 2005;
rs.m_dwCustomerIDStatus = DBSTATUS_S_OK;
_tcscpy_s(rs.m_PostalCode, sizeof(rs.m_PostalCode) / sizeof(TCHAR),
_T("34213-4444"));
rs.m_dwPostalCodeLength = 10;
rs.m_dwPostalCodeStatus = DBSTATUS_S_OK;
HRESULT hr = rs.Insert();
if (FAILED(hr))
{
ATLTRACE(_T("Insert failed: 0x%X\n"), hr);
}
CRowset::IsSameRow
Membandingkan baris yang ditentukan dengan baris saat ini.
Sintaks
HRESULT IsSameRow(HROW hRow) const throw();
Parameter
HRow
[di] Handel ke baris untuk dibandingkan dengan baris saat ini.
Tampilkan Nilai
HRESULT standar. S_OK menunjukkan bahwa barisnya sama. Untuk nilai lain, lihat IRowsetIndentity::IsSameRow dalam Referensi Programmer OLE DB di Windows SDK.
CRowset::MoveFirst
Memindahkan kursor ke posisi awal dan mengambil baris awal.
Sintaks
HRESULT MoveFirst() throw();
Tampilkan Nilai
HRESULT standar.
Keterangan
Memanggil IRowset::RestartPosition untuk memposisikan ulang lokasi pengambilan berikutnya ke posisi awal (posisi yang merupakan lokasi pengambilan berikutnya saat set baris dibuat) dan mengambil baris awal.
CRowset::MoveLast
Memindahkan kursor ke baris terakhir.
Sintaks
HRESULT MoveLast() throw();
Tampilkan Nilai
HRESULT standar.
Keterangan
Memanggil IRowset::RestartPosition untuk memposisikan ulang lokasi pengambilan berikutnya ke posisi terakhir dan mengambil baris terakhir.
Metode ini mengharuskan Anda mengatur DBPROP_CANSCROLLBACKWARDS ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris. (Untuk performa yang lebih baik, Anda mungkin juga mengatur DBPROP_QUICKRESTART ke VARIANT_TRUE.)
CRowset::PindahBerikutnya
Memindahkan kursor ke rekaman berikutnya.
Sintaks
HRESULT MoveNext() throw();
HRESULT MoveNext(LONG lSkip,
bool bForward= true) throw();
Parameter
lLewati
[di] Jumlah baris yang akan dilewati sebelum mengambil.
bMaju
[di] Teruskan true untuk melanjutkan ke rekaman berikutnya, false untuk bergerak mundur.
Tampilkan Nilai
HRESULT standar. Saat akhir kumpulan baris telah tercapai, mengembalikan DB_S_ENDOFROWSET.
Keterangan
Mengambil baris berurutan berikutnya dari CRowset objek, mengingat posisi sebelumnya. Secara opsional, Anda dapat memilih untuk melewati baris lSkip atau bergerak mundur.
Metode ini mengharuskan Anda mengatur properti berikut sebelum memanggil Open pada tabel atau perintah yang berisi set baris:
DBPROP_CANSCROLLBACKWARDSharus VARIANT_TRUE jika lSkip< 0DBPROP_CANFETCHBACKWARDSharus VARIANT_TRUE jika bForward = false
Jika tidak (jika = 0 dan > = true), Anda tidak perlu mengatur properti tambahan apa pun.
CRowset::MovePrev
Memindahkan kursor ke rekaman sebelumnya.
Sintaks
HRESULT MovePrev() throw();
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini mengharuskan Anda mengatur atau DBPROP_CANFETCHBACKWARDSDBPROP_CANSCROLLBACKWARDS untuk VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
CRowset::MoveToBookmark
Mengambil baris yang ditandai dengan marka buku atau baris pada offset tertentu (lSkip) dari marka buku tersebut.
Sintaks
HRESULT MoveToBookmark(const CBookmarkBase& bookmark,
LONG lSkip = 0) throw();
Parameter
Bookmark
[di] Marka buku yang menandai lokasi tempat Anda ingin mengambil data.
lLewati
[di] Jumlah baris dari marka buku ke baris target. Jika lSkip adalah nol, baris pertama yang diambil adalah baris bookmark. Jika lSkip adalah 1, baris pertama yang diambil adalah baris setelah baris bookmark. Jika lSkip adalah -1, baris pertama yang diambil adalah baris sebelum baris bookmark.
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini memerlukan antarmuka IRowsetLocateopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetLocate ke VARIANT_TRUE dan mengatur DBPROP_CANFETCHBACKWARDS ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
Untuk informasi tentang menggunakan marka buku di konsumen, lihat Menggunakan Bookmark.
CRowset::MoveToRatio
Mengambil baris mulai dari posisi pecahan dalam set baris.
Sintaks
HRESULT MoveToRatio(DBCOUNTITEM nNumerator,
DBCOUNTITEM nDenominator,bool bForward = true) throw();
Parameter
nPembilang
[di] Pembilang digunakan untuk menentukan posisi pecahan tempat mengambil data.
nPenyebut
[di] Denominator yang digunakan untuk menentukan posisi pecahan untuk mengambil data.
bMaju
[di] Menunjukkan apakah akan bergerak maju atau mundur. Defaultnya adalah teruskan.
Tampilkan Nilai
HRESULT standar.
Keterangan
MoveToRatio mengambil baris sesuai kira-kira dengan rumus berikut:
(nNumerator * RowsetSize ) / nDenominator
di mana RowsetSize adalah ukuran set baris, diukur dalam baris. Akurasi rumus ini tergantung pada penyedia tertentu. Untuk detailnya, lihat IRowsetScroll::GetRowsAtRatio.
Metode ini memerlukan antarmuka IRowsetScrollopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetScroll ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
CRowset::ReleaseRows
Memanggil IRowset::ReleaseRows untuk merilis handel baris saat ini.
Sintaks
HRESULT ReleaseRows() throw();
Tampilkan Nilai
HRESULT standar.
CRowset::SetData
Mengatur nilai data dalam satu atau beberapa kolom baris.
Sintaks
HRESULT SetData() const throw();
HRESULT SetData(int nAccessor) const throw();
Parameter
nAkses
[di] Jumlah aksesor yang digunakan untuk mengakses data.
Tampilkan Nilai
HRESULT standar.
Keterangan
SetData Untuk formulir yang tidak menerima argumen, semua aksesor digunakan untuk memperbarui. Anda biasanya memanggil SetData untuk mengatur nilai data dalam kolom berturut-turut, lalu memanggil Perbarui untuk mengirimkan perubahan tersebut.
Metode ini memerlukan antarmuka IRowsetChangeopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetChange ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
Operasi pengaturan mungkin gagal jika satu atau beberapa kolom tidak dapat ditulis. Ubah peta kursor Anda untuk memperbaiki ini.
CRowset::Batalkan
Membatalkan perubahan apa pun yang dilakukan pada baris sejak pengambilan atau Pembaruan terakhir.
Sintaks
HRESULT Undo(DBCOUNTITEM* pcRows = NULL,
HROW* phRow = NULL,
DBROWSTATUS* pStatus = NULL) throw();
Parameter
pcRows
[out] Penunjuk ke lokasi tempat Undo mengembalikan jumlah baris yang coba diurungkan jika diperlukan.
phRow
[out] Penunjuk ke lokasi tempat Undo mengembalikan array handel ke semua baris yang coba diurungkan jika diperlukan.
pStatus
[out] Penunjuk ke lokasi tempat Undo mengembalikan nilai status baris. Tidak ada status yang dikembalikan jika pStatus null.
Tampilkan Nilai
HRESULT standar.
Keterangan
Metode ini memerlukan antarmuka IRowsetUpdateopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetUpdate ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
CRowset::Update
Mengirimkan perubahan tertunda yang dilakukan ke baris saat ini sejak pengambilan terakhir atau Update panggilan di atasnya.
Sintaks
HRESULT Update(DBCOUNTITEM* pcRows = NULL,
HROW* phRow = NULL,
DBROWSTATUS* pStatus = NULL) throw();
Parameter
pcRows
[out] Penunjuk ke lokasi tempat Update mengembalikan jumlah baris yang coba diperbarui, jika diperlukan.
phRow
[out] Penunjuk ke lokasi tempat Update mengembalikan handel baris yang coba diperbarui. Tidak ada handel yang dikembalikan jika phRow null.
pStatus
[out] Penunjuk ke lokasi tempat Update mengembalikan nilai status baris. Tidak ada status yang dikembalikan jika pStatus null.
Tampilkan Nilai
HRESULT standar.
Keterangan
Mengirimkan perubahan tertunda yang dibuat ke baris saat ini sejak baris tersebut terakhir diambil atau diperbarui (menggunakan Update atau UpdateAll). Anda biasanya memanggil SetData untuk mengatur nilai data dalam kolom dalam baris, lalu memanggil Update untuk mengirimkan perubahan tersebut.
Metode ini memerlukan antarmuka IRowsetUpdateopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetUpdate ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
CRowset::UpdateAll
Mengirimkan perubahan tertunda yang dilakukan ke semua baris sejak pengambilan terakhir atau Update panggilan di atasnya.
Sintaks
HRESULT UpdateAll(DBCOUNTITEM* pcRows = NULL,
HROW** pphRow = NULL,
DBROWSTATUS** ppStatus = NULL) throw();
Parameter
pcRows
[out] Penunjuk ke lokasi tempat UpdateAll mengembalikan jumlah baris yang coba diperbarui, jika diperlukan.
pphRow
[out] Pointer ke memori di mana UpdateAll mengembalikan handel baris yang coba diperbarui. Tidak ada handel yang dikembalikan jika pphRow null.
ppStatus
[out] Penunjuk ke lokasi tempat Update mengembalikan nilai status baris. Tidak ada status yang dikembalikan jika ppStatus null.
Keterangan
Mengirimkan perubahan tertunda yang dilakukan ke semua baris karena baris tersebut terakhir diambil atau diperbarui menggunakan Perbarui atau UpdateAll.
UpdateAll akan memperbarui setiap baris yang telah dimodifikasi, terlepas dari apakah Anda masih memiliki handel untuk baris tersebut (lihat pphRow) atau tidak.
Misalnya, jika Anda terbiasa Insert menyisipkan lima baris dalam set baris, Anda dapat memanggil Update lima kali atau memanggil UpdateAll sekali untuk memperbarui semuanya.
Metode ini memerlukan antarmuka IRowsetUpdateopsional , yang mungkin tidak didukung pada semua penyedia; jika demikian, metode mengembalikan E_NOINTERFACE. Anda juga harus mengatur DBPROP_IRowsetUpdate ke VARIANT_TRUE sebelum memanggil Open pada tabel atau perintah yang berisi set baris.
Tampilkan Nilai
HRESULT standar.
Lihat juga
Sampel DBViewer
Sampel MultiRead
Sampel Atribut MultiRead
Templat Konsumen OLE DB
Referensi Templat Konsumen OLE DB