Subject Re: [firebird-support] understanding characters sets
Author Kjell Rilbe
Milan Babuskov wrote:

Thanks Milan. So all in all, the client should always make sure it
passes "everything" in the connection's character set, whatever it's
going to do, unless the connection has NONE, in which case the client
should make sure all string constants are in the corresponding column's
character set and all identifiers in UTF8.

That would mean that various parts of a query string might use different
character encodings. How does FB handle that when parsing the query string?

Come to think of it, what character encoding does Firebird expect the
query to be when using NONE for the connection? UTF8? And then when a
string constant is encountered, it's assumed to be the same encoding as
the column it's inserted into, compared to, appended to, or what not?
So, what happens if this string constant is encoded in such a way that
it's illegal in UTF8 (or whatever the query string parser expects)? Does
it work? How?

> Kjell Rilbe wrote:
>
> > Would it be possible to select connection character set on a per column
> > or per parameter basis?
>
> It wouldn't make sense. For example, what if your INSERT statement uses
> both columns at the same time?

It would make sense if the query string could be parsed with various
parts being encoded in different character sets. But I realize this is
would be a "beast"... :-)

On the other hand, it could save some transliteration work.

Any comment regarding non-ASCII characters in identifiers? I know you
are part of the FlameRobin team, and it was that client I used when I
had problems...

Kjell
--
--------------------------------------
Kjell Rilbe
DataDIA AB
E-post: kjell@...
Telefon: 08-761 06 55
Mobil: 0733-44 24 64