| 
| 
 | Вопрос # 4 242/ вопрос открыт / | 
 |  Здравствуйте, эксперты!Уперся в следующую проблему:
 Пишу программу на delphi 2009. База данных с использованием DBExpress и MySql.
 В PhpMyAdmin на странице "Переменные и настройки сервера" и в таблицах везде стоит UTF8.
 В my.cnf тоже.
 В программе дополнительно делаю еще и так:
 Users_SQLConnect.ExecuteDirect('set character_set_server='+QuotedStr('utf8'));
 Users_SQLConnect.ExecuteDirect('set character_set_connection='+QuotedStr('utf8'));
 Users_SQLConnect.ExecuteDirect('set character_set_client='+QuotedStr('utf8'));
 Users_SQLConnect.ExecuteDirect('set character_set_results='+QuotedStr('utf8'));
 Users_SQLConnect.ExecuteDirect('set character_set_database='+QuotedStr('utf8'));
 
 Стоит задача сделать возможность сохранения данных в разных кодировках (языках), не только в кирилице.
 Я пробовал, если поставить ср1251, кирилица сохраняется нормально, но этого не достаточно. Сохранять пробовал по-разному:
 
 edit;
 FieldByName('DopPar3_name').AsString:=new_name;
 post;
 ApplyUpdates(-1);
 
 и
 
 Users_SQLConnect.ExecuteDirect('UPDATE  `Table` SET  `DopPar3_name` =  '+QuotedStr(new_name)+' WHERE  `id` =2 LIMIT 1');
 
 Результат сохранения одинаковый.
 Как в Delphi 2009 через DBExpress сохранять в MySql в UTF8?
 
 Буду благодарен за любую помощь, подсказку, пример, ссылку!
 
|  |   Вопрос задал: ilnur (статус: Посетитель)Вопрос отправлен: 29 мая 2010, 19:30
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 1; последнее сообщение — 29 мая 2010, 20:23; участников в обсуждении: 1. 
|   | ilnur (статус: Посетитель), 29 мая 2010, 20:23 [#1]:ilnur: Здравствуйте еще раз! Я сам решил свою проблему. Пишу решение, может кому-то еще пригодится... Необходимо было указать: TSQLConnection.Params ServerCharSet=utf8.
 Работает даже без указания
 Users_SQLConnect.ExecuteDirect('set character_set_server='+QuotedStr('utf8'));
 Users_SQLConnect.ExecuteDirect('set character_set_connection='+QuotedStr('utf8'));
 Users_SQLConnect.ExecuteDirect('set character_set_client='+QuotedStr('utf8'));
 Users_SQLConnect.ExecuteDirect('set character_set_results='+QuotedStr('utf8'));
 Users_SQLConnect.ExecuteDirect('set character_set_database='+QuotedStr('utf8'));
 
 Эти параметры у меня в MySql прописаны, а здесь так в процессе "научного тыка" появились.
 Всем удачи!
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |