Subject Re: [IB-Conversions] Date Problem in Interbase 5.6 to Firebird 1.5.4 migration
Author Helen Borrie
At 09:02 PM 5/09/2007, you wrote:
>Hi all,We are migrating our application from Interbase 5.6 to
>Firebird 1.5.4. In the process we took a backup of Interbase db
>which had \'Dialect\' setting as 1,this backup db was restored for
>Firebird with the same setting(Dialect 1).After doing this, few
>tables which had fields with Interbase datatype \'Date\' got its
>datatype changed to \'Timestamp\' in Firebird and few fields were
>also set default value as \'1-jan-100\' for \'TimeStamp\' type.
>However, in Firebird db with setting \'Dialect 1\' we were not able
>to add any fields with datatype \'Time\' or \'TimeStamp\', only
>\'Date\' type was available. If we set the Dialect as 3 in Firebird,
>all \'Date\',\'Time\' and \'Timestamp\' are available.
>Doubt on our part is, why the datatype for fields having interbase
>\'Date\' type is changed to type \'Timestamp\' when \'Dialect 1\'
>(which does not support \'TimeStamp\' datatype) is set for the Firebird db.
>Please clarify.

Did you actually get around to downloading and reading the Migration Guide?

The DATE data type in Dialect 1 is equivalent to TIMESTAMP. Some
tools will report it as TIMESTAMP.

To operate on your Dialect 1 database, make sure that, first, you
have the right version of fbclient.dll (or the one that was generated
as gds32.dll) and secondly, that you have your client connect in
Dialect 1, not 3. ISQL should do this automatically for you, if you
open your database directly from the command line. You can test the
situation with this command:
SQL> show sql dialect;

If you open isql first, without connecting to the database, use this
command to set the client dialect:

SQL> SET SQL DIALECT 1;

If you want some help on how to do this from your application, or
from a third-party tool, provide some info about the interface you are using.

Helen