Основы проектирования приложений баз данных


         

записей от начала до конца


Например:

rsSet.Open( ); // Результирующий набор открыт: // текущая запись - первая if( rsSet.IsBOF( ) ) return; // Результирующий набор пуст while ( !rsSet.IsEOF( ) ) // Просмотр всех // записей от начала до конца rsSet.MoveNext( ); rsSet.MoveLast( ); // Переход к последней записи while( !rsSet.IsBOF( ) ) // Просмотр всех // записей от конца до начала rsSet.MovePrev( ); rsSet.MoveFirst( ); // Переход к первой записи

  • AddNew – метод, используемый для добавления новой записи (только для режима выборки по одной записи);
  • CancelUpdate – метод, используемый для отмены изменений, произведенных операциями Edit или AddNew с момента последнего вызова метода Update;
  • Delete – метод, используемый для удаления текущей записи;
  • Edit – метод, вызываемый для включения режима редактирования текущей записи. В режиме редактирования можно выполнять методы AddNew и Delete. Для внесения изменений, сделанных этими методами, в базу данных следует вызвать метод Update.

    Например:

    rsSet.Edit( ); // Начало операций изменения записи rsSet.m_dwF1 = 123; rsSet.m_strF1 = "abc"; if( !rsCustSet.Update( ) ) // Внесение изменений

  • Update – метод, возвращающий ненулевое значение в том случае, если запись источника данных была успешно обновлена;
  • MoveFirst – метод, перемещающий указатель текущей записи на первую запись результирующего набора;
  • MoveLast – метод, перемещающий указатель текущей записи на последнюю запись результирующего набора;
  • MoveNext – метод, перемещающий указатель текущей записи на следующую запись результирующего набора;
  • MovePrev – метод, перемещающий указатель текущей записи на предыдущую запись результирующего набора;
  • DoFieldExchange – метод, вызываемый для автоматического обмена данными между членами класса – полями результирующего набора (текущей записи) и соответствующими полями текущей записи в источнике данных. Метод DoFieldExchange доступен только для объектов класса, производного от класса CRecordset. Если набор записей создан непосредственно как объект класса CRecordset, то следует использовать метод GetFieldValue.Обмен данными с источником данных, называемый RFX-обменом (record field exchange), работает в двух направлениях: из полей объекта "результирующий набор" в поля источника данных и обратно. Для того чтобы использовать этот метод, достаточно в производном классе результирующего набора определить имена и тип полей данных – членов класса. ClassWizard самостоятельно вставит код в переопределяемый метод DoFieldExchange.


  • Например:

    void CSet::DoFieldExchange(CFieldExchange* pFX) { pFX->SetFieldType(CFieldExchange::outputColumn); RFX_Int(pFX, "F1", m_wF1); // Вызов RFX-метода RFX_Text(pFX, "F2", m_strF2); }


    Содержание  Назад  Вперед