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

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

преобразования типов в firebird [D7, IB6.x]


Страницы:   1 2 3

stud ©   (2003-10-13 11:15:00) 

как можно осуществить такую операцию? сложить две переменные типа время или дата если написать просто time=time1+time2;
то получим expression evaluation not supported. как выйти из этой положений. приведение типов возможно только из/в numeric


MsGuns   (2003-10-13 13:35:00) [41]

SQL -> CAST -> F1


kaif   (2003-10-13 13:33:00) [42]

2 Johnmen © (13.10.03 12:03) [5]
Я тоже имел такого рода проблемы с преобразованием между чиленными типами и Date (по инерции от Дельфи). Но ведь такая вещь, как mydate = mydate + 5.5 в текстах хранимых процедур работает. Так в чем основное правило работы с датами?


stud   (2003-10-13 12:08:00) [43]


> Johnmen © (13.10.03 12:03) [5]

ясно, что и требовалось ......


Johnmen   (2003-10-13 12:03:00) [44]

>stud ©

С справке ошибка. Преобразование из любых численных типов в date и time невозможно.


Жук   (2003-10-13 11:56:00) [45]


> stud ©

А что должно получится, если к 1 июня 2003 года прибавить 5 октября 1980 ?


stud   (2003-10-13 11:35:00) [46]


> Alexandr © (13.10.03 11:27) [2]

не может быть!!!!
а что я спрашиваю, нужно сложить время как numeric, затем преобразовать его в "нормальное" время и записать в таблицу. судя по справке при ведение типов ко времени или дате возможно для numeric, но такая конструкция
f_TIME=:F_TIME+:TIMESLOT; все три переменные типа numeric
temp_time(время)=cast(CAST(f_TIME AS timestamp) as time); выдает черте что,
Overflow occurred during data type conversion.
conversion error from string "0.375208333333333".
т.е. f_time=0.375, timeslot=0.0208333333333 и как с этим бороться


Alexandr   (2003-10-13 11:27:00) [47]

таки, а чтож ты хочешь получить при сложении времени?
сколько будет 21.01.1984+04.10.2002?

складывать можно только интервалы. Которые предствалять чилом минут, секунд дней и пр... а это уже integer.


Sergey13   (2003-10-13 11:26:00) [48]

2stud © (13.10.03 11:15)
А что ты хочешь получить от складывания времени? Может не время надо складывать, а что то другое?


Страницы:   1 2 3

Наверх

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