Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

NUMERIC(32) to Integer [D5]


Dany ©   (2003-11-10 14:21:00) 

Привет, All!

использую связку Delphi5 и Oracle8i, в Oracle создана таблица содержащая поле NUMERIC(32) при вызове из Delphi приходит как Float, а мне на входе нужен Integer, наверняка этот вопрос решаем, подскажите как?

Спасибо.


Reindeer Moss Eater   (2003-11-10 15:58:00) [1]

С Numeric(4), как и с любым другим, все равно приходит как float.

Так и должно быть.
Параметры "ENABLE INTEGERS", "ENABLE BCD" по дефолту имеют значения False


Ломброзо   (2003-11-10 15:32:00) [2]

Однозначно, неверно! )
А через что работаешь? BDE, ODBC, ODAC, OLE DB? Может, технологию доступа сменить?


Dany   (2003-11-10 15:22:00) [3]

Фигня, ребята ;)
С Numeric(4), как и с любым другим, все равно приходит как float.
Обращаюсь через ttable. При добавлении компонент полей в ttable, поле приходит как TFloatField.


Anatoly Podgoretsky   (2003-11-10 15:01:00) [4]

Оно не влезет и в Int64 и в Float (Extended) без потери значащих цифр


Ломброзо   (2003-11-10 14:51:00) [5]

NUMERIC(32) это вовсе не 32 бита, это целое число с максимальным значением 999999999999999999999999999999999999 (32 девятки). Поэтому, разумеется, в Int и не влазит.


clickmaker   (2003-11-10 14:48:00) [6]

Если данные получаешь через Query, то в селекте просто convert(int, FloatField) as FieldName
А вообще-то проще alter table и сменить тип поля. Все равно на клиенте будет тока 4 байта использоваться


Наверх

Титульная страница Поиск, карта сайта Написать письмо