Шаг 15 - Создание объекта CRecordset

Создать набор записей можно разными путями. Вот схема:

15_1.gif (1143 b)

Итак, объект CDaoRecordset всегда создается на основе CDaoDatabase:

CDaoRecordset( CDaoDatabase* pDatabase = NULL );

Дальше следует функция Open(). Эта функций может использовать для создания набора записей три варианта.

virtual void Open( int nOpenType = AFX_DAO_USE_DEFAULT_TYPE,
	LPCTSTR lpszSQL = NULL, int nOptions = 0 );
throw( CDaoException, CMemoryException );

virtual void Open( CDaoTableDef* pTableDef,
	int nOpenType = dbOpenTable, int nOptions = 0 );
throw( CDaoException, CMemoryException );

virtual void Open( CDaoQueryDef* pQueryDef,
	int nOpenType = dbOpenDynaset, int nOptions = 0 );
throw( CDaoException, CMemoryException );

В зависимости от того на основе чего создается набор записей. Если есть Open() на 100% должен быть Close() и он есть:

virtual void Close( );
throw( CDaoException );

Давайте построим набор записей на основе SQL запроса:

if (!cDaoDB.IsOpen()) return FALSE;
cDaoRset = new CDaoRecordset(&cDaoDB);
cDaoRset->Open( AFX_DAO_USE_DEFAULT_TYPE,"SELECT * FROM TABLE1");

Проверяем, что таблица создана, создаем новый объект и открываем набор записей.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.