Sdílet prostřednictvím


CRecordset::Delete

Odstraní aktuální záznam.

virtual void Delete( );

Poznámky

Po úspěšné odstranění členů sadě záznamů pole dat nastavena na hodnotu Null a musíte explicitně volat z přesunout funkce opustit odstraněný záznam.Jakmile přesunete mimo odstraněným záznamem, není možné vrátit se k němu.Pokud zdroj dat podporuje transakce, aby Odstranit volání v rámci transakce.Další informace naleznete v článku Transakce (ODBC).

[!POZNÁMKA]

Pokud provádění hromadných řádek načítání nelze volat Odstranit.To způsobí selhání výrazu.Přestože třídy CRecordset neposkytuje mechanismus pro aktualizaci řádků hromadných dat, můžete napsat vlastní funkce pomocí funkce rozhraní API ODBC SQLSetPos.Další informace o načítání řádků hromadného naleznete v článku záznamů: načítání záznamů hromadné (ODBC).

Poznámka k upozorněníUpozornění

Musí být možné aktualizovat sadu záznamů a musí být platný záznam v sadě záznamů při volání Odstranit; v opačném případě dojde k chybě.Například odstranit záznam, ale neposouvají nový záznam před volání Odstranit , Odstranit vyvolá CDBException.

Na rozdíl od AddNew a Upravit, volání Odstranit není následována volání aktualizace.Pokud Odstranit volání selže, data pole členy jsou ponechány beze změny.

Výjimky

Tuto metodu lze vyvolávají výjimky typu CDBException *.

Příklad

Tento příklad ukazuje sadu záznamů vytvořené v rámci funkce.Příklad předpokládá existenci m_dbCust , členské proměnné typu CDatabase již připojen ke zdroji dat.

// Create a derived CRecordset object
CCustomer rsCustSet(&m_dbCust);
rsCustSet.Open();

if(rsCustSet.IsEOF() || !rsCustSet.CanUpdate() ||
   !rsCustSet.CanTransact())
{
   return;
}

m_dbCust.BeginTrans();

// Perhaps scroll to a new record...
// Delete the current record
rsCustSet.Delete();

// Finished commands for this transaction
if(IDYES == AfxMessageBox(_T("Commit transaction?"), MB_YESNO))
   m_dbCust.CommitTrans();
else // User changed mind
   m_dbCust.Rollback();

Požadavky

Záhlaví: afxdb.h

Viz také

Referenční dokumentace

Třída CRecordset

Diagram hierarchie

CDatabase::BeginTrans

CDatabase::CommitTrans

CDatabase::Rollback

Třída CDBException