Subject Re: [firebird-support] Transaction isolation problem?
Author Helen Borrie
At 05:53 PM 26/02/2010, you wrote:
>Nevermind. Found the problem using ISQL - apparently Firebird 2.1
>changes TIMESTAMP precision from seconds to 0.0001 seconds, which is
>causing difference between my OLD.MODIFIED_ON (4 decimal places
>precision) and NEW.MODIFIED_ON (rounded down to seconds).

You must be talking about the CURRENT_TIMESTAMP subsecond precision (not the TIMESTAMP data type).

>Can I force a timestamp precision in Firebird 2.1 to follow Firebird 1.5
>rules?

In 1.5, in the time part of CURRENT_TIMESTAMP and in CURRENT_TIME you got 4 places of decimal for sub-seconds, but the value was always .0000.

From Firebird 2 onward, you get 3 places of decimal for sub-seconds but you get the actual value. You cannot go back to .0000, but you can set the precision for CURRENT_TIMESTAMP and CURRENT_TIME to be zero places of decimal, using

CURRENT_TIMESTAMP(0)
CURRENT_TIME(0)

It is in the release notes and in the Inst. and Migration Guide, by the way.

./heLen