Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Beágyaz egy OLE DB sorkészlet-objektumot és több kapcsolódó felületet, és kezelési módszereket biztosít a sorhalmazadatokhoz.
Szemantika
template <class TAccessor = CAccessorBase>
class CRowset
Paraméterek
Taccessor
Egy kiegészítő osztály. Az alapértelmezett érték a CAccessorBase.
Követelmények
Fejléc: atldbcli.h
Tagok
Módszerek
| Név | Leírás |
|---|---|
| AddRefRows | Növeli az aktuális sorhoz társított hivatkozásszámot. |
| Bezár | Felszabadítja a sorokat és az aktuális IRowset felületet. |
| Összehasonlítás | Két könyvjelzőt hasonlít össze az IRowsetLocate használatával::Compare. |
| CRowset | Létrehoz egy új CRowset objektumot, és (opcionálisan) társítja azt egy IRowset paraméterként megadott felülettel. |
| Töröl | Sorokat töröl a sorhalmazból az IRowsetChange::D eleteRows használatával. |
| FindNextRow | Megkeresi a következő egyező sort a megadott könyvjelző után. |
| GetApproximatePosition | Egy könyvjelzőnek megfelelő sor hozzávetőleges pozícióját adja vissza. |
| Adat beszerzése | Adatokat kér le a sorhalmaz sorpéldányából. |
| GetDataHere | Adatokat kér le a megadott pufferből. |
| GetOriginalData | Lekéri a legutóbb lekért vagy az adatforrásba továbbított adatokat, figyelmen kívül hagyva a függőben lévő módosításokat. |
| GetRowStatus | Az összes sor állapotát adja vissza. |
| Beilleszt | Új sort hoz létre és szúr be az IRowsetChange::InsertRow használatával. |
| Ugyanaz a sor | Összehasonlítja a megadott sort az aktuális sortal. |
| MoveFirst | Áthelyezi a következő beolvasási helyet a kezdeti pozícióba. |
| MoveLast | Ugrás az utolsó rekordra. |
| MoveNext | Adatokat kérdez le a következő szekvenciális sorból vagy a következő soron túl megadott számú pozícióból. |
| Áthelyezéselőz | Ugrás az előző rekordra. |
| MoveToBookmark | Beolvassa a könyvjelzővel jelölt sort vagy a könyvjelzőtől egy adott eltolásnál lévő sort. |
| MoveToRatio | A sorok beolvasása a sorhalmaz törtpozíciójából indulva. |
| Kiadási sorok | Meghívja az IRowset::ReleaseRows parancsot az aktuális sorleíró kiadásához. |
| Adatkészlet | Adatértékeket állít be egy sor egy vagy több oszlopában az IRowsetChange::SetData használatával. |
| Visszavonás | Visszavonja a sor módosításait az utolsó beolvasás vagy frissítés óta. |
| Frissít | A legutóbbi beolvasás vagy frissítés óta az aktuális sorra végrehajtott függőben lévő módosításokat továbbítja. |
| UpdateAll | Az utolsó beolvasás vagy frissítés óta az összes sorra vonatkozó függőben lévő módosításokat továbbítja. |
Megjegyzések
Az OLE DB-ben a sorkészlet az az objektum, amelyen keresztül egy program adatokat állít be és kér le.
Ez az osztály nem példányosítandó, hanem sablonparaméterként CTableCCommand van átadva vagy (CRowset ez az alapértelmezett).
CRowset::AddRefRows
Meghívja az IRowset::AddRefRows függvényt, hogy növelje (egyenként) az aktuális sorleíróhoz társított hivatkozásszámot.
Szemantika
HRESULT AddRefRows() throw();
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ez a metódus növeli az aktuális sorleíró hivatkozásainak számát. Hívja meg a ReleaseRowst a darabszám csökkenéséhez. Az áthelyezési metódusok által visszaadott sorok hivatkozási száma egy.
CRowset::Bezárás
Felszabadítja a sorokat és az aktuális IRowset-felületet .
Szemantika
void Close() throw();
Megjegyzések
Ez a metódus felszabadítja a sorhalmazban jelenleg lévő összes sort.
CRowset::Összehasonlítás
Két könyvjelzőt hasonlít össze az IRowsetLocate használatával::Compare.
Szemantika
HRESULT Compare(const CBookmarkBase& bookmark1,
const CBookmarkBase& bookmark2,
DBCOMPARE* pComparison) const throw();
Paraméterek
Könyvjelző1
[in] Az első összehasonlítandó könyvjelző.
Könyvjelző2
[in] A második összehasonlítandó könyvjelző.
pÖsszehasonlítás
[kifelé] Az összehasonlítás eredményére mutató mutató.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ehhez a metódushoz szükség van az opcionális felületre IRowsetLocate, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetLocate előtt VARIANT_TRUE is be kell állítaniaOpen.
A könyvjelzők fogyasztókban való használatáról további információt a Könyvjelzők használata című témakörben talál.
CRowset::CRowset
Létrehoz egy új CRowset objektumot, és (opcionálisan) társítja azt egy paraméterként megadott IRowset-felülettel .
Szemantika
CRowset();
CRowset(IRowset* pRowset);
Paraméterek
pRowset
[in] Az osztályhoz társítandó felületre mutató mutató IRowset .
CRowset::D elete
Meghívja az IRowsetChange::D eleteRows parancsot, hogy törölje az aktuális sort a sorkészletből.
Szemantika
HRESULT Delete() const throw();
Visszaadott érték
Egy standard HRESULT.
CRowset::FindNextRow
Megkeresi a következő egyező sort a megadott könyvjelző után.
Szemantika
HRESULT FindNextRow(DBCOMPAREOP op,
BYTE* pData,
DBTYPE wType,
DBLENGTH nLength,
BYTE bPrecision,
BYTE bScale,
BOOL bSkipCurrent = TRUE,
CBookmarkBase* pBookmark = NULL) throw();
Paraméterek
távírókezelő
[in] A sorértékek összehasonlításához használandó művelet. Az értékekért lásd: IRowsetFind::FindNextRow.
pData
[in] Mutató a egyeztetni kívánt értékre.
wType
[in] A puffer értékrészének adattípusát jelzi. A típusjelzőkről a Windows SDK-ban az OLE DB Programozói referenciaadattípusai című témakörben talál további információt.
nHossz
[in] Az adatértékhez lefoglalt fogyasztói adatstruktúra bájtban megadott hossza. További részletekért tekintse meg a cbMaxLen leírását az OLE DB Programozó referenciaanyagában.
bPrecizitás
[in] Az adatok lekérésekor használt maximális pontosság. Csak akkor használható, ha a wType DBTYPE_NUMERIC. További információkért lásd az OLE DB programozójának referenciájában szereplő DBTYPE_NUMERIC vagy DBTYPE_DECIMAL konverzióit.
bSkála
[in] Az adatok lekéréséhez használt méretezés. Csak akkor használható, ha a wType DBTYPE_NUMERIC vagy DBTYPE_DECIMAL. További információkért lásd az OLE DB programozójának referenciájában szereplő DBTYPE_NUMERIC vagy DBTYPE_DECIMAL konverzióit.
bKihagyásÁram
[in] A könyvjelző azon sorainak száma, amelyeknél keresni szeretne.
pKönyvjelző
[in] A könyvjelző a keresés indításához használt pozícióhoz.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ehhez a metódushoz szükség van az opcionális felületre IRowsetFind, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetFind előtt VARIANT_TRUE is be kell állítaniaOpen.
A könyvjelzők fogyasztókban való használatáról további információt a Könyvjelzők használata című témakörben talál.
CRowset::GetApproximatePosition
Egy könyvjelzőnek megfelelő sor hozzávetőleges pozícióját adja vissza.
Szemantika
HRESULT GetApproximatePosition(const CBookmarkBase* pBookmark,
DBCOUNTITEM* pPosition,
DBCOUNTITEM* pcRows) throw();
Paraméterek
pKönyvjelző
[in] Egy könyvjelzőre mutató mutató, amely azonosítja azt a sort, amelynek a pozícióját meg kell találni. NULL érték, ha csak a sorok száma szükséges.
pPozíció
[kifelé] Mutató arra a helyre, ahol GetApproximatePosition a sor pozícióját adja vissza. NULL érték, ha nincs szükség a pozícióra.
pcRows
[kifelé] Mutató arra a helyre, ahol GetApproximatePosition a sorok teljes számát adja vissza. NULL érték, ha a sorszám nem kötelező.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ehhez a metódushoz szükség van az opcionális felületre IRowsetScroll, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetScroll előtt VARIANT_TRUE is be kell állítaniaOpen.
A könyvjelzők fogyasztókban való használatáról további információt a Könyvjelzők használata című témakörben talál.
CRowset::GetData
Adatokat kér le a sorhalmaz sorpéldányából.
Szemantika
HRESULT GetData() throw();
HRESULT GetData(int nAccessor) throw();
Paraméterek
nAccessor
[in] Az adatok eléréséhez használni kívánt tartozék (nulla eltolás) indexszáma.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ha olyan tartozékot ad meg, amely nem automatikus elérő BEGIN_ACCESSOR, ezzel a módszerrel explicit módon lekérheti az adatokat a kiegészítő szám megadásával.
CRowset::GetDataHere
Adatokat kér le az aktuális sorból, és a megadott pufferbe helyezi.
Szemantika
HRESULT GetDataHere(int nAccessor,
void* pBuffer) throw();
Paraméterek
nAccessor
[in] Az adatok eléréséhez használandó tartozék indexszáma.
pBuffer
[kifelé] Egy puffer, amelybe az aktuális rekord adatait szeretné helyezni.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
A függvény használatára vonatkozó példát a MultiRead-minta mutatja be.
CRowset::GetOriginalData
Az adatforrásból legutóbb lekért vagy továbbított adatok lekérésére irányuló hívások IRowsetUpdate::GetOriginalData .
Szemantika
HRESULT GetOriginalData() throw();
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ez a metódus lekéri a legutóbb lekért vagy az adatforrásba továbbított adatokat; nem kér le értékeket függőben lévő módosítások alapján.
Ehhez a metódushoz szükség van az opcionális felületre IRowsetUpdate, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetUpdate előtt VARIANT_TRUE is be kell állítaniaOpen.
CRowset::GetRowStatus
Az összes sor állapotát adja vissza.
Szemantika
HRESULT GetRowStatus(DBPENDINGSTATUS* pStatus) const throw();
Paraméterek
pÁllapot
[kifelé] Egy olyan helyre mutató mutató, ahol GetRowStatus az állapotértéket adja vissza. Lásd: DBPENDINGSTATUS az OLE DB programozójának referenciaanyagában.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ehhez a metódushoz szükség van az opcionális felületre IRowsetUpdate, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetUpdate előtt VARIANT_TRUE is be kell állítaniaOpen.
CRowset::Beszúrás
Új sort hoz létre és inicializál a tartozék adataival.
Szemantika
HRESULT Insert(int nAccessor = 0,
bool bGetHRow = false) throw();
Paraméterek
nAccessor
[in] Az adatok beszúrásához használandó tartozék száma.
bGetHRow
[in] Azt jelzi, hogy a program beolvassa-e a beszúrt sor fogópontját.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ehhez a metódushoz szükség van az opcionális felületre IRowsetChange, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetChange előtt VARIANT_TRUE is be kell állítaniaOpen.
A beszúrás sikertelen lehet, ha egy vagy több oszlop nem írható. Módosítsa a kurzortérképet a hiba kijavításához.
példa
Az alábbi példa bemutatja, hogyan férhet hozzá egy adatforráshoz egy sorkészleten keresztül, majd hogyan szúrhat be egy sztringet egy táblázat használatával az adott sorhalmazban.
Először hozzon létre egy táblaosztályt egy új ATL-objektum projektbe való beszúrásával. Kattintson például a jobb gombbal a projektre a Munkaterület panelen, és válassza az Új ATL-objektum lehetőséget. Az Adathozzáférés kategóriában válassza a Fogyasztó lehetőséget. Hozzon létre egy tábla típusú fogyasztói objektumot. (A Tábla kijelölése közvetlenül a táblából hoz létre egy sorkészletet, a Parancs kiválasztásával pedig egy sorkészlet jön létre egy SQL-parancson keresztül.) Válasszon ki egy adatforrást, és adjon meg egy táblát, amelyen keresztül hozzáférhet az adatforráshoz. Ha a CCustomerTable fogyasztói objektumot hívja meg, a következő módon implementálhatja a beszúrási kódot:
// 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
Összehasonlítja a megadott sort az aktuális sortal.
Szemantika
HRESULT IsSameRow(HROW hRow) const throw();
Paraméterek
hRow
[in] Egy fogópont a sorhoz az aktuális sorhoz viszonyítva.
Visszaadott érték
Egy standard HRESULT. S_OK azt jelzi, hogy a sorok megegyeznek. További értékekért lásd : IRowsetIndentity::IsSameRow az OLE DB programozói referenciájában a Windows SDK-ban.
CRowset::MoveFirst
A kurzort a kezdeti pozícióba helyezi, és beolvassa a kezdeti sort.
Szemantika
HRESULT MoveFirst() throw();
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Meghívja az IRowset::RestartPosition függvényt , hogy a következő beolvasási helyet a kezdeti helyre helyezze át (a sorhalmaz létrehozásakor a következő beolvasási helyet tartalmazó pozíciót), és lekéri a kezdeti sort.
CRowset::MoveLast
A kurzor áthelyezése az utolsó sorba.
Szemantika
HRESULT MoveLast() throw();
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Meghívja az IRowset::RestartPosition függvényt a következő beolvasási hely utolsó helyére való áthelyezéséhez, és lekéri az utolsó sort.
Ehhez a metódushoz VARIANT_TRUE kell beállítania DBPROP_CANSCROLLBACKWARDS , mielőtt meghívja Open a sorhalmazt tartalmazó táblát vagy parancsot. (A jobb teljesítmény érdekében VARIANT_TRUE is beállíthatja DBPROP_QUICKRESTART .)
CRowset::MoveNext
A kurzor áthelyezése a következő rekordra.
Szemantika
HRESULT MoveNext() throw();
HRESULT MoveNext(LONG lSkip,
bool bForward= true) throw();
Paraméterek
lKihagyás
[in] A beolvasás előtt kihagyandó sorok száma.
bElőre
[in] Továbblépés true a következő rekordra a false visszalépéshez.
Visszaadott érték
Egy standard HRESULT. Amikor elérte a sorhalmaz végét, DB_S_ENDOFROWSET ad vissza.
Megjegyzések
Lekéri az objektum következő szekvenciális sorát CRowset az előző pozícióra emlékezve. Lehetőség van arra is, hogy kihagyja az lSkip-sorokat , vagy hátralépjen.
Ehhez a metódushoz a következő tulajdonságokat kell megadnia, mielőtt meghívja Open a sorhalmazt tartalmazó táblát vagy parancsot:
DBPROP_CANSCROLLBACKWARDSVARIANT_TRUE kell lennie, ha lSkip< 0DBPROP_CANFETCHBACKWARDSVARIANT_TRUE kell lennie, ha bForward = hamis
Ellenkező esetben (ha lSkip>= 0 és bForward = igaz), nem kell további tulajdonságokat beállítania.
CRowset::MovePrev
A kurzor áthelyezése az előző rekordra.
Szemantika
HRESULT MovePrev() throw();
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ehhez a metódushoz be kell állítania vagy DBPROP_CANFETCHBACKWARDSDBPROP_CANSCROLLBACKWARDS VARIANT_TRUE, mielőtt meghívja Open a sorhalmazt tartalmazó táblát vagy parancsot.
CRowset::MoveToBookmark
Beolvassa a könyvjelzővel jelölt sort vagy egy adott eltolás (lSkip) sorát a könyvjelzőből.
Szemantika
HRESULT MoveToBookmark(const CBookmarkBase& bookmark,
LONG lSkip = 0) throw();
Paraméterek
könyvjelző
[in] Egy könyvjelző, amely azt a helyet jelöli, ahonnan adatokat szeretne beolvasni.
lKihagyás
[in] A könyvjelzőtől a célsorig lévő sorok száma. Ha az lSkip értéke nulla, az első beolvasott sor a könyvjelzős sor. Ha az lSkip 1, a beolvasott első sor a könyvjelzős sor utáni sor. Ha az lSkip -1, a beolvasott első sor a könyvjelzős sor előtti sor.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ehhez a metódushoz szükség van az opcionális felületre IRowsetLocate, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorkészletet tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetLocate előtt VARIANT_TRUE és VARIANT_TRUE értékre kell állítania.DBPROP_CANFETCHBACKWARDSOpen
A könyvjelzők fogyasztókban való használatáról további információt a Könyvjelzők használata című témakörben talál.
CRowset::MoveToRatio
A sorok beolvasása a sorhalmaz törtpozíciójából indulva.
Szemantika
HRESULT MoveToRatio(DBCOUNTITEM nNumerator,
DBCOUNTITEM nDenominator,bool bForward = true) throw();
Paraméterek
nSzámláló
[in] A számláló azt a tört pozíciót határozza meg, amelyből adatokat szeretne beolvasni.
n Nevező
[in] A nevező, amellyel meghatározható az adatok beolvasásának törtpozíciója.
bElőre
[in] Azt jelzi, hogy előre vagy hátra szeretne-e lépni. Az alapértelmezett érték a továbbítás.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
MoveToRatio a sorokat nagyjából az alábbi képlet szerint olvassa be:
(nNumerator * RowsetSize ) / nDenominator
ahol RowsetSize a sorhalmaz mérete, sorokban mérve. A képlet pontossága az adott szolgáltatótól függ. További információ: IRowsetScroll::GetRowsAtRatio.
Ehhez a metódushoz szükség van az opcionális felületre IRowsetScroll, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetScroll előtt VARIANT_TRUE is be kell állítaniaOpen.
CRowset::ReleaseRows
Meghívja az IRowset::ReleaseRows parancsot az aktuális sorleíró kiadásához.
Szemantika
HRESULT ReleaseRows() throw();
Visszaadott érték
Egy standard HRESULT.
CRowset::SetData
Adatértékeket állít be egy sor egy vagy több oszlopában.
Szemantika
HRESULT SetData() const throw();
HRESULT SetData(int nAccessor) const throw();
Paraméterek
nAccessor
[in] Az adatok eléréséhez használandó tartozék száma.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
SetData Az argumentumokat nem elfogadó űrlap esetében a rendszer minden tartozékot használ a frissítéshez. Általában egy sor oszlopában lévő adatértékek beállítására, SetData majd a módosítások továbbításához hívja meg az Update-et .
Ehhez a metódushoz szükség van az opcionális felületre IRowsetChange, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetChange előtt VARIANT_TRUE is be kell állítaniaOpen.
A beállítási művelet meghiúsulhat, ha egy vagy több oszlop nem írható. Módosítsa a kurzortérképet a hiba kijavításához.
CRowset::Visszavonás
Visszavonja a sor módosításait az utolsó beolvasás vagy frissítés óta.
Szemantika
HRESULT Undo(DBCOUNTITEM* pcRows = NULL,
HROW* phRow = NULL,
DBROWSTATUS* pStatus = NULL) throw();
Paraméterek
pcRows
[kifelé] Mutató arra a helyre, ahol Undo a visszavonni próbált sorok számát adja vissza, ha szükséges.
phRow
[kifelé] Mutató arra a helyre, ahol Undo egy fogóponttömböt ad vissza az összes olyan sorra, amelyet szükség esetén vissza próbált vonni.
pÁllapot
[kifelé] Mutató arra a helyre, ahol Undo a sorállapot értékét adja vissza. Nem ad vissza állapotot, ha a pStatus értéke null.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
Ehhez a metódushoz szükség van az opcionális felületre IRowsetUpdate, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetUpdate előtt VARIANT_TRUE is be kell állítaniaOpen.
CRowset::Update
Az aktuális sorra az utolsó beolvasás vagy Update hívás óta végrehajtott függőben lévő módosításokat továbbítja.
Szemantika
HRESULT Update(DBCOUNTITEM* pcRows = NULL,
HROW* phRow = NULL,
DBROWSTATUS* pStatus = NULL) throw();
Paraméterek
pcRows
[kifelé] Mutató arra a helyre, ahol Update szükség esetén visszaadja a frissíteni próbált sorok számát.
phRow
[kifelé] Mutató arra a helyre, ahol Update a frissíteni próbált sor fogópontját adja vissza. A függvény nem ad vissza fogópontot, ha a phRow értéke null.
pÁllapot
[kifelé] Mutató arra a helyre, ahol Update a sorállapot értékét adja vissza. Nem ad vissza állapotot, ha a pStatus értéke null.
Visszaadott érték
Egy standard HRESULT.
Megjegyzések
A sor legutóbbi beolvasása vagy frissítése óta (a vagy az Update használatával) az aktuális sorra végrehajtott függőben lévő módosításokat továbbítja. A SetData meghívása általában egy sor oszlopában lévő adatértékek beállítására, majd a módosítások továbbítására hívja Update meg őket.
Ehhez a metódushoz szükség van az opcionális felületre IRowsetUpdate, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetUpdate előtt VARIANT_TRUE is be kell állítaniaOpen.
CRowset::UpdateAll
Az utolsó beolvasás vagy Update hívás óta az összes sorra végrehajtott függőben lévő módosításokat továbbítja.
Szemantika
HRESULT UpdateAll(DBCOUNTITEM* pcRows = NULL,
HROW** pphRow = NULL,
DBROWSTATUS** ppStatus = NULL) throw();
Paraméterek
pcRows
[kifelé] Mutató arra a helyre, ahol UpdateAll szükség esetén visszaadja a frissíteni próbált sorok számát.
pphRow
[kifelé] Egy memóriamutató, amelyben UpdateAll a frissíteni kívánt sor fogópontját adja vissza. A függvény nem ad vissza fogópontot, ha a pphRow értéke null.
ppÁllapot
[kifelé] Mutató arra a helyre, ahol Update a sorállapot értékét adja vissza. A függvény nem ad vissza állapotot, ha a ppStatus értéke null.
Megjegyzések
Az összes sorra vonatkozó függőben lévő módosításokat továbbítja, mivel a sorokat legutóbb beolvasták vagy frissítették a Frissítés vagy UpdateAlla .
UpdateAll minden módosított sort frissít, függetlenül attól, hogy rendelkezik-e még a leíróval (lásd : pphRow).
Ha például öt sort szúrt Insert be egy sorhalmazba, ötször hívhat Update , vagy egyszer felhívhatja UpdateAll őket az összes frissítéséhez.
Ehhez a metódushoz szükség van az opcionális felületre IRowsetUpdate, amely nem minden szolgáltató esetében támogatott; ebben az esetben a metódus E_NOINTERFACE ad vissza. A sorhalmazt tartalmazó táblára vagy parancsra való meghívás DBPROP_IRowsetUpdate előtt VARIANT_TRUE is be kell állítaniaOpen.
Visszaadott érték
Egy standard HRESULT.
Lásd még
DBViewer-minta
Többszálú minta
Többszálas attribútumok – minta
OLE DB fogyasztói sablonok
OLE DB fogyasztói sablonok referenciája