R>У меня установлен, по-моему, MDAC 2.5 (с SP4).
R>Решил я, значит, проверить это дело. Сляпал тестовый проектик, запускаю — а он мне такую же ошибку выдает!
R>Найдя челюсть где-то на полу, я немного исправил вызов CRecordset::Open. Такой код работает:
R>R> CDatabase db;
R> db.Open("Ora"); // dsn указывает на Microsoft ODBC for Oracle, v. 2.573.4403.00 от 25.08.00
R> CRecordset rs(&db);
R> rs.Open(CRecordset::forwardOnly, "SELECT SIN(.5) s FROM dual");
R> CString val;
R> if(rs.IsEOF()) val="Eof!";
R> else rs.GetFieldValue("S", val);
R> MessageBox(val);
R>
R>Первоначально было так:
R>R> rs.Open(AFX_DB_USE_DEFAULT_TYPE, "SELECT SIN(.5) s FROM dual");
R>
R>Если проблемы остаются, код — в студию! :)
Спасибо за совет..все заработало...Единственно Если через CDatabase стучаться к базе, то все работает...
а если используя только CRecordset, то нифига. и почему работает только если параметр forwardOnly стоит в остальных ошибку выдает...
Кстати не подскажешь где моя ошибка...
Проблема вот вчем...я не могу получить значение типа "numeric" выдаеться ошибка:
"Error in column 1: Numeric value out of range" (со строковыми все в порядке)
CDatabase db;
db.Open( _T( "Oracle instance" ));
CRecordset rs(&db);
rs.Open(CRecordset::forwardOnly, "SELECT F.BYTES FROM DBA_DATA_FILES F");
//CString varValue;
CDBVariant varValue;
while( !rs.IsEOF( ) )
{
rs.GetFieldValue((short)0, varValue);
//********
}
rs.MoveNext( );
}