Вниз
Скачать: CL | DM;

Unicode+ADO+Mysql   Найти похожие ветки 

← →
=Far_Away=   (2004-08-27 13:28) [0]

Использую в Delphi 6 Unicode ADO (TntADOxxx) компоненты.
Через MyOLEDB провайдер или OLEDB provider for ODBC + MyODBC.

Не удаётся сделать INSERT или SELECT Unicode строки. "Уникодовые" символы превращаются в "обычные".

При этом аналогичные запросы успешно выполняются на PHP.

Посоветуйте как можно работать c Unicode в Delphi+MySQL. Может нужен другой драйвер?

Delphi 6, MySQL 4.1.5, MyODBC 3.51, MyOLEDB 3.0


← →
=Far_Away=   (2004-08-28 00:40) [1]

Невероятно! Я нашла решение и у меня всё работает. Итак, тем, кому вдруг придётся мучаться с уникодом:

Использую в Delphi 6 Unicode ADO (TntADOxxx) компоненты.
Использую MyODBC 3.51, OLEDB provider for ODBC.
Использую MySQL 4.1.5, charset нужных полей при создании таблиц указываю utf8.
Чтобы всё работало, в my.ini указала значение переменной character_set_server=utf8. Не забудьте перезегрузить mysql сервер!
Теперь в update/insert запросах надо писать так:

UPDATE table SET field="+utf8Encode(TntEdit1.text)+" WHERE ...

В select запросах ничего особого не надо, но к возвращаемым записям надо обращаться так:

tntEdit1.text:=utf8Decode(TntAdoQuery["field"]).

Вот и все мудрости. А как я парилась... Зато моя система теперь полноценно многоязычная. :) Даже приятно...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.019 c
1-1094928058
mrald
2004-09-11 22:40
2004.09.26
PopupMenu другого цвета


1-1094734605
Ivolg
2004-09-09 16:56
2004.09.26
ListView


1-1094977227
DVM
2004-09-12 12:20
2004.09.26
Русский язык в консольных приложениях под XP как сделать?


14-1094650016
bloodman
2004-09-08 17:26
2004.09.26
Нужна ли поддержка скинов маленьким программам.


14-1094526020
KSergey
2004-09-07 07:00
2004.09.26
Ошибки БД и клиентское ПО




   Наверх