Kelas CRowset
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
TAccessor
Kelas aksesor. Default adalah CAccessorBase
.
Persyaratan
Header: 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:DeleteRows. |
FindNextRow | Menemukan baris pencocokan berikutnya setelah bookmark yang ditentukan. |
GetApproximatePosition | Mengembalikan perkiraan posisi baris yang sesuai dengan marka buku. |
GetData | Mengambil data dari salinan baris himpunan baris. |
GetDataHere | Mengambil data dari buffer yang ditentukan. |
GetOriginalData | 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. |
MoveFirst | Memposisikan ulang lokasi pengambilan berikutnya ke posisi awal. |
MoveLast | Berpindah ke rekaman terakhir. |
MoveNext | Mengambil data dari baris berurutan berikutnya atau jumlah posisi tertentu di luar baris berikutnya. |
MovePrev | Berpindah ke rekaman sebelumnya. |
MoveToBookmark | Mengambil baris yang ditandai dengan marka buku atau baris pada offset tertentu dari marka buku tersebut. |
MoveToRatio | Mengambil baris mulai dari posisi pecahan dalam set baris. |
ReleaseRows | 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. |
UpdateAll | 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::Close
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 IRowsetLocate
opsional , 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
pRowset
[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::FindNextRow
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.
nLength
[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.
bScale
[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.
bSkipCurrent
[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 IRowsetFind
opsional , 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 IRowsetScroll
opsional , 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
nAccessor
[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
nAccessor
[di] Nomor indeks aksesor yang digunakan untuk mengakses data.
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 IRowsetUpdate
opsional , 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 IRowsetUpdate
opsional , 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::Insert
Membuat dan menginisialisasi baris baru menggunakan data dari aksesor.
Sintaks
HRESULT Insert(int nAccessor = 0,
bool bGetHRow = false) throw();
Parameter
nAccessor
[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 IRowsetChange
opsional , 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::MoveNext
Memindahkan kursor ke rekaman berikutnya.
Sintaks
HRESULT MoveNext() throw();
HRESULT MoveNext(LONG lSkip,
bool bForward= true) throw();
Parameter
lSkip
[di] Jumlah baris yang akan dilewati sebelum mengambil.
bForward
[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_CANSCROLLBACKWARDS
harus VARIANT_TRUE jika lSkip< 0DBPROP_CANFETCHBACKWARDS
harus VARIANT_TRUE jika bForward = false
Jika tidak (jika lSkip>= 0 dan bForward = 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_CANFETCHBACKWARDS
DBPROP_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.
lSkip
[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 IRowsetLocate
opsional , 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
nNumerator
[di] Pembilang digunakan untuk menentukan posisi pecahan tempat mengambil data.
nDenominator
[di] Denominator yang digunakan untuk menentukan posisi pecahan untuk mengambil data.
bForward
[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 IRowsetScroll
opsional , 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
nAccessor
[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 IRowsetChange
opsional , 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 IRowsetUpdate
opsional , 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 IRowsetUpdate
opsional , 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 IRowsetUpdate
opsional , 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