Subject Re: [ib-support] to change the decimal separator
Author aandea_launch
Hello All,

Is this still the case in Firebird 1.5, or in the latest release
(still RC) or Firebird 2.0? Isn't there any way to signal an Embedded
Firebird engine to use the OS locale when converting a string to an
integer?

I have currently the same issue: We have a Delphi application that
is using FloatToStr function to create the Firebird SQL statement. The
application works excellent in US, but when we deploy it to a German
OS, all the decimal separators are not 'comma', thus the FB SQL
becomes something along the lines of "Select ID from the EVENTS where
VALUE < 23,223". This is failing currently when using Embedded
Firebird 1.5 (with no extra setting).

Is there a way to indicate to the latest Firebird Engines to use the
OS locale for string to float conversions?

Thank you!

Alin Andea


--- In firebird-support@yahoogroups.com, Phil Shrimpton <phil@...> wrote:
>
> On Tuesday 10 December 2002 13:10, you wrote:
>
> Hi,
>
> > I am getting an ASCII-File containing SQL Statments Like Insert into
> > Artikel (ARTno,Price) Values ('12345','123,22')
> > The Result is, that this Article now has Price of 12322 instead of
123.22.
> > The Systems I work with runs in Germany and the OS uses the ',' as the
> > decimal separator.
> > Is there a possability to change the separator Character? I don't
want to
> > program a Stringconversion for the hole Insertscript.
>
> Firebird, like most other RDBMSs, is not 'locale aware' when it
comes to
> string conversions. It accepts 'strings' in a few formats specified
in the
> SQL 'spec', but unless it has changed recently numeric values with a
comma as
> a separator is not in the spec.
>
> So you input file is incorrect. You are going to have to either get
whatever
> is producing this file to produce output conforming to the spec, or
write
> something to do the conversion yourself.
>
> Phil
>
> --
> Linux 2.4.4-4GB
> 12:14pm up 6 days, 18:40, 1 user, load average: 0.17, 0.04, 0.01
>