parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

теперь будьте внимательны с кодировкой базы

Александр Петросян (PAF) 07.12.2005 10:31 / 07.12.2005 10:36

если ничего не указать в параметрах строки соединения, то Parser вам ничего и не перекодирует, и отдаст в SQL сервер запрос в request:charset кодировке. в такой же кодировке будет считать, что ему вернут ответ.

см. документацию, параметр ?ClientCharset.


тут что плохо: что если таблицы вы сами наполняете, то вы можете какое-то время не замечать проблем:
ведь данные как попали туда в utf, так и достанутся в utf, и всё будет как-бы работать… пока вы не запросите length(field) или не скажете order by.
или не захотите в varchar(10) положить 10 букв в utf кодировке, а когда будете забирать обнаружите, что вынулось только 5 букв.

в mysql <4 в базе официально можно хранить только в той кодировке, в какой вам скажет администратор скажет.

в mysql 4+ можно в базе прямо utf официально и хранить, см. его документацию.
о том, как при этом соединяться из parser и как работать: уже тут писалось.