Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.21;
Скачать: CL | DM;

Вниз

выбор значения из поля типа TimeStamp с помощью Case   Найти похожие ветки 

 
VadimKV   (2004-10-21 16:08) [0]

Среда FB1.5 (Dialect 3), IBExpert.
Подскажите кто знает. Почему если выбирать значение из поля типа TimeStamp обычным способом, то значение отабражается так же как в Grid. А если выбирать тоже самое поле через Case, то формат отабражения даты меняется.
В меню Environment Options -> Grid -> Displai Format (IBExpert) установлено dd.mm.yyyy hh:mm.

Пример:   обычно     - 08.09.2004 00:00,
Dialect3  через Case - 2004-09-08 00:00:00.0000
Dialect1  через Case - 8 aug 2004 (в данный момент не интересует)

select               r.createddate
      ,case
      when sys.rdb$field_name = "CREATEDDATE"
           then     r.createddate
... ... ...
и т.д.


 
Sandman25 ©   (2004-10-21 16:25) [1]

cast(case (...) as НУЖНЫЙ ТИП)


 
Johnmen ©   (2004-10-21 16:25) [2]

Думается, потому, что предопределить тип значения, получаемого применением case проблематично. А когда он уже определен, то к нему уже позно применять маски, и он выводится "как есть" .
Для полей этой проблемы нет.


 
VadimKV   (2004-10-21 16:45) [3]

Sandman25 Весь Case, взять в cast не могу, потомучно много
... ... ...
when sys.rdb$field_name = "CREATEDDATE" then r.createddate
when sys.rdb$field_name = "NAMEREF"     then r.nameref
... ... ...

Johnmen - "А когда он уже определен...".
Когда и как его можно определить нужным образом, что бы Case выводил этот тип нормально?


 
Johnmen ©   (2004-10-21 17:27) [4]


> VadimKV   (21.10.04 16:45) [3]


1.
>Весь Case, взять в cast не могу, потомучно много

Ну что ? Как "множество" влияет на "невозможность" ?

2.
>r.createddate
>r.nameref

Какого типа поля ?

3.
>Когда и как его можно определить ...

Так это фича программы под назв. IBExpert. См. её исх.коды :)))


 
VadimKV   (2004-10-22 09:08) [5]

Весь Case, взять в cast не могу, потомучно много when и поля разных типов.
r.createddate  timestamp
r.nameref      varchar, integer и т.д.

А точно, что нужно зделать с этой фичей неизвестно?
Честно, в исходных кодах, Я незнаю что искать и что там править.
Если можите подсказать, то большое спасибо.
Кто муже, почему в исходных кодах IBExpert, ведь эту настройку должен хранить сервер FB1.5 наверное.


 
Johnmen ©   (2004-10-22 09:11) [6]

>поля разных типов.

Вот ты и сам ВСЁ сказал !

Про исх. коды была шутка...:)


 
Johnmen ©   (2004-10-22 09:13) [7]

Хотя можешь попробовать
THEN CAST(... AS TIMESTAMP)
THEN CAST(... AS TIMESTAMP)


 
VadimKV   (2004-10-22 09:17) [8]

THEN CAST(... AS TIMESTAMP)
Так я уже пробавал пробавал, не помагает.

Есть конечно крайний вариант через Extract(...).
Но все равно не понятно почему так происходит, и можно ли вообще это исправить.


 
Johnmen ©   (2004-10-22 09:20) [9]

Ну что тут непонятного ? Всё очевидно !
И вообще, зачем это тебе ?


 
VadimKV   (2004-10-22 09:31) [10]

Нужно это для того, что бы данные хранились в одинаковом виде.
Пример поля типя TimeStamp  заполняются  в виде
"1.10.2004", делая запрос select fldTimeStamp ... будет возвращено значение "1.10.2004".
Если Я делаю какие либо обработки данных запросом вида
   insert into ...
   select case
     when sys.rdb$field_name = "CREATEDDATE" then r.createddate
     when sys.rdb$field_name = "NAMEREF"     then r.nameref
... ... ...
, то в БД данные будут храниться ввиде "2004-09-08", это же значение далее будет возвращать Select ...


 
Johnmen ©   (2004-10-22 09:35) [11]

Похоже у тебя серьезные проблемы с проектированием.
Рекомендую в этом направлении решать проблемы...



Страницы: 1 вся ветка

Текущий архив: 2004.11.21;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.024 c
14-1099647423
vecna
2004-11-05 12:37
2004.11.21
Всем плакать от смеха!


11-1082715252
BolikDimon
2004-04-23 14:14
2004.11.21
Не компилируется mirror.pas


6-1094825758
Луарвик
2004-09-10 18:15
2004.11.21
idHTTP завешивает приложение...


14-1099241658
VEG
2004-10-31 19:54
2004.11.21
Никто не ставил винт 160-200Гб на старые мат.платы (2000 год)?


1-1099952551
Alek_1
2004-11-09 01:22
2004.11.21
Как правильно копировать динамические масивы?