![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с просмотром VIEW [D6, IB6.x]
Брат © (2003-02-14 13:34:00)Люди! Я формирую просмотр из таблицы, а он мне усекает дробные части чисел. В исходной таблице стоит тип DOUBLE PRECISION, а в просмотре получается INTEGER... Как сделать чтобы дробные части не усекались?
Johnmen (2003-02-14 14:29:00) [1]>Wolf © (14.02.03 14:15)
Не надо короче... Если после IIF получим int, то сколько не кастуй....:)))
Брат (2003-02-14 14:21:00) [2]
> Народ не придирайтесь, пока пишешь ответ, новые исходные
> данные приходят.
>
> Короче, напиши типа: cast(iif(tf-2,0,s1) as double precision)
СПАСИБА НАРОД ОГРОМНОЕ!!!!
Я поставил DIF вместо IIF и всё получилось!!!! :)))
Wolf (2003-02-14 14:15:00) [3]Народ не придирайтесь, пока пишешь ответ, новые исходные данные приходят.
Короче, напиши типа: cast(iif(tf-2,0,s1) as double precision)
Брат (2003-02-14 14:09:00) [4]Есть такая функция - DIF (она возвращает DOUBLE PRECISION),
а IIF возвращает INTEGER
Брат (2003-02-14 14:05:00) [5]
> iif(tf-1,0,M1)
> Видимо причиной одна из опций iif. А именно целый ноль.
..ля, как я раньше не додумался!!!!!
ща буду пробовать...
Johnmen (2003-02-14 14:01:00) [6]Так ты разберись со своей функцией IIF !
Reindeer Moss Eater (2003-02-14 14:01:00) [7]Enable BCD здесь никаким боком не участвует
Reindeer Moss Eater (2003-02-14 14:00:00) [8]iif(tf-1,0,M1)
Видимо причиной одна из опций iif. А именно целый ноль.
Брат (2003-02-14 13:59:00) [9]
> У меня была такая проблемма при numeric(9,2) они на самом
> деле хранятся как integer. чтобы избавиться от этого надо
> в BDE поставить Enable BCD в true.
а где там эта опция?
Брат (2003-02-14 13:58:00) [10]
> а в просмотре получается INTEGER...
> Что это значит?
> Редактор полей создает поле ftInteger?
да...
и я не могу понять почему...
Reindeer Moss Eater (2003-02-14 13:57:00) [11]Wolf ©
Не смешивай в кучу Numeric и Double Precision
Reindeer Moss Eater (2003-02-14 13:56:00) [12]а в просмотре получается INTEGER...
Что это значит?
Редактор полей создает поле ftInteger?
Wolf (2003-02-14 13:56:00) [13]У меня была такая проблемма при numeric(9,2) они на самом деле хранятся как integer. чтобы избавиться от этого надо в BDE поставить Enable BCD в true.
myor (2003-02-14 13:56:00) [14]отличный пример правильности (неправильности) вопроса- ни одного ответа (не считая недоумения wolf-а).
Брат (2003-02-14 13:56:00) [15]
> В таблице есть "нецелые" данные ?
конечно, а в итоге получаются целыми - отсекается дробная часть
:(
Брат (2003-02-14 13:53:00) [16]
> Чуть больше информации - где формируется View?
> Если это в Delphi, то что используется для подключения к
> БД - ODBC?
Использую компоненты IB... это ты имеешь ввиду?
CREATE VIEW VITYAG (
VC,FC0000,FC,EC,TF,VN,FN0000,FN,EN,M1,SM1,S1,SS1,) AS
select
vcode,fcode0000,fcode,ecode,tf,vname,fname0000,fname,ename,
iif(tf-1,0,M1) as m1,iif(tf-2,0,M1) as sm1,
iif(tf-1,0,s1) as s1,iif(tf-2,0,s1) as ss1,
from ZVIT_RV
это был текст просмотра, причем поля m1,s1 из таблицы ZVIT_RV имеют тип DOUBLE, а в просмотре получаются как INTEGER
Reindeer Moss Eater (2003-02-14 13:49:00) [17]а в просмотре получается INTEGER...
Что это значит?
Редактор полей создает поле ftInteger?
Reindeer Moss Eater (2003-02-14 13:48:00) [18]В таблице есть "нецелые" данные ?
Wolf (2003-02-14 13:47:00) [19]Да не должно быть так, попробуй пересоздать Вьюшку
Reindeer Moss Eater (2003-02-14 13:46:00) [20]Где текст View?
Запрос к таблице тоже так себя ведет?
Что используется для доступа к серверу?