теперь будьте внимательны с кодировкой базы
Александр Петросян (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 и как работать: уже тут писалось.