Вниз
Скачать: 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.024 c
1-1094997798
maxnn
2004-09-12 18:03
2004.09.26
Защита DCU


14-1093712962
Piter
2004-08-28 21:09
2004.09.26
Забавно... учитесь, автовладельцы! :)


14-1094645477
Yakudza
2004-09-08 16:11
2004.09.26
Sybase ASE на шару отдают !


3-1093929473
Jey
2004-08-31 09:17
2004.09.26
Группировка в отчете


4-1092151693
Ego
2004-08-10 19:28
2004.09.26
можно ли сделать "ловушку" без использования библиотеки?




   Наверх