CRecordset::Delete
Удаляет текущую запись.
virtual void Delete( );
Заметки
После успешного удаления элементов данных полей набора записей устанавливаются в значение NULL, необходимо явно вызвать одну из функций Переместить для перемещения с удаленной записи. После перемещения с удаленной записи, невозможно вернуть к нему. Если источник данных поддерживает транзакции, то можно сделать часть вызова Удалить транзакции. Дополнительные сведения см. в статье транзакция (ODBC).
Примечание
Если реализован bulk строку выборку, то нельзя вызывать Удалить.Это приведет к становятся утверждении.Хотя класс CRecordset не предоставляет механизм для обновления массовые строки данных, можно написать собственные функции с помощью api-функций ODBC SQLSetPos.Дополнительные сведения о массовой строке выборке см. в статье Набор записей. Пакетная выборка строк (ODBC).
Предупреждение
Набор записей должны быть обновляемым и должно быть допустимое запись current of в наборе записей при вызове Удалить; в противном случае возникает ошибка.Например, при удалении записи, но не перейдите к новому рекорду, прежде чем вызывать метод Удалить снова, Удалить вызывает CDBException.
В отличие от AddNew и правка, вызов Удалить не передается при вызове обновление. Если вызов Удалить завершается неудачей, то элементы данных полей слева неизменной.
Исключения
Этот метод может создавать исключения типа CDBException*.
Пример
В этом примере показан набор записей, созданный во фрейме функции. В примере предполагается наличие m_dbCust, переменную-член типа CDatabase уже подключенную к источнику данных.
// 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();
Требования
Header: afxdb.h