Hello,

Roman Rokytskyy said the following on 06.06.2007 11:10:

Прочитал тут рядом: http://permalink.gmane.org/gmane.comp.db.firebird.dotnetprovider/3883 что сервер хранит каждый символ UTF-8 как 4 байта, независимо от того какой именно это символ. Это правда? И если это так - то wire protocol тоже передает 4 байта на каждый символ в UTF-8 ???

Если я не ошибаюсь, то проблема там только в том, что он подключается с lc_ctype=NONE к базе созданой с default charset UTF-8. Сервер с диска читает символ, потом читает, что послать по сети надо 4 байта

Так вот мне и интересно - почему он решает что надо послать по сети 4 байта? Я всегда думал что в UTF-8 под символы отводится переменное число байт. А в случае латинского алфавита это число равно единице, т. е. ничем не отличается от US-ASCII.

И он там, вроде, пробовал при подключении указывать UTF-8 вместо NONE и результат был тот же самый...

--
Oleg

Ответить