Subject Re: [Firebird-Java] Re: PS about client-to-FBcore protocols regarding charset, #5.
Author Roman Rokytskyy
>> >> - All clients are able to consume data in UTF-8. Period. All
>> Delphi
>> >> users will cry when they start to convert Unicode strings to SBCS
>> >> and back.
>> >
>> > FBClient is not required to break external API
>> You can't. The logic of something-to-NONE conversion is that "read"
> That was not the question of something to none.
> It was generic topic.
> And i mean that even is wire protocol would be Unicode-only, that
> does not necessary mean client cannot provide non-Unicode API.

It can provide whatever non-Unicode API except "raw data" a.k.a.

> Making wire protocol Unicode-only would require new version of
> fbclient, but not render application no more working.

Not only that. Server has to reject the NONE encoding for any database
or column.

The logic with NONE is similar to NULL. NULL is not TRUE, NULL is not
FALSE, it is NULL. Same with NONE - there is no rules to store data in
NONE charset in a consisten way. Making wire protocol (or whathever
part) hardcoded with UTF8 you require a consistent conversion between
"something" and "UTF8", which cannot be provided in case of "NONE.

Let's stop this discussion here - it is becoming to lengthy. :)