Продолжаем разговор. (с)
дабы никто не подумал, что это был пятничный пост. :-)
В тех тестах операционка - Windows Server 2003 Standard Edition
SELECT CAST('04.05.2007' AS DATE) - (-7) FROM RDB$DATABASE
1) Попробовал на рабочем сервере
Firebird-2.0.1.12855, CS, Dialect 1, ODS11
Windows 2000 server,
результат тот же
10.05.2007 23:59:59
2) попробовал на домашнем компе,
FB2.0.0.12745 (RC5),
Windows Server 2003 Standard Edition
+ база Ya (ODS10.0), Dialect 1
+ база ODS11, Dialect 1
10.05.2007 23:59:59
3) Все тоже самое, но база в Dialect 3
для повторения эксперимента заменяем DATE на TIMESTAMP
SELECT CAST('04.05.2007' AS TIMESTAMP) - (-7) FROM RDB$DATABASE
10.05.2007 23:59:59
SELECT CAST('04.05.2007' AS TIMESTAMP) + 7 FROM RDB$DATABASE
11.05.2007 0:00:00
4) скачал и поставил Firebird-2.0.2.12897-0_win32.zip
Classic
во всех вариантх (Dialect 1 и 3, ODS10 и 11)
10.05.2007 23:59:59
------------------------------------------
2 DY, HV:
Это баг ?
или нормальное поведение, о котором я незнаю...
ответьте плиз.
Мне надо просматривать свои базы, или это будет исправлено.
В данном случае я выкрутился, воткнув IIF, но когда и где это еще появится...
_целочисленных_ вычислений с датой много.
P.S. Это такая ненавязчивая рекомендация слезать наконец с первого диалекта?
:-)