Вниз
Скачать: 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.021 c
14-1094741251
Копир
2004-09-09 18:47
2004.09.26
Эй, иногородние, скоро Вас в Москву не пустят.


14-1094418610
yozh_programmer
2004-09-06 01:10
2004.09.26
update


3-1093926148
R.O.O.T
2004-08-31 08:22
2004.09.26
DAO


1-1094569297
Боян Георгиев
2004-09-07 19:01
2004.09.26
Проблем с конструктором


6-1089828767
Фёдор Мегатронов
2004-07-14 22:12
2004.09.26
Как послать php запросы ?




   Наверх