Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];




Вниз

Чтение из таблицы Oracle 


Ser_Kham1   (2002-02-11 14:20) [0]

Доброго всем дня.
Столкнулся с одной проблемой.
Читаю данные из таблицы Oracle.
Мне нужно значение поля koef (тип NUMBER(*))

AnsiString sql="select koef from pasha.matrix where nmat=6 and tipinf=1 and numI=1 and numJ=1";
ADOQuery1->SQL->Add(sql);
ADOQuery1->Open();
float koef=StrToFloat(ADOQuery1->Fields->Fields[0]->AsString);
ShowMessage(koef);

Программа выдаёт 0, хотя если этот же самый select выполнить в SQLPlus и SQLExplorer, то
выдаётся koef=-5.167e-06.
Пробовал также
float koef=ADOQuery1->Fields->Fields[0]->AsVariant;
и
float koef=
StrToFloat(ADOQuery1->Fields->Fields[0]->AsString);
Может кто знает в чём дело?
Ser_Kham



Юрий Жуков   (2002-02-11 15:57) [1]

Непонятно зачем тебе двойное преобразование?
Сначала берешь asString, потом преобразуешь во Float, а потом ShowMessage
Попробуй так:
ShowMessage(ADOQuery1->Fields->Fields[0]->AsString);

Ну или отобрази результаты запроса в Грид, может запрос у тебя не одну запись возврасчает?




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.022 c
3-19086           Demon ltd             2002-02-08 23:41  2002.03.07  
Различная работа с базами - экспорт и удаление


6-19285           sumy_vlad             2001-12-21 11:03  2002.03.07  
Help


1-19213           Darkwin               2002-02-19 13:37  2002.03.07  
Помогите разобраться с какой - то глупой непонятностью


7-19355           bios_i_ego            2001-12-01 13:06  2002.03.07  
В Паскале было Port


4-19373           Voyager               2002-01-08 14:59  2002.03.07  
Синхронизация процессов