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

Кодировка параметров SQL-запросов   Найти похожие ветки 

 
prezervogaz   (2010-04-03 14:06) [0]

Здравствуйте!

Я пытаюсь работать с базой данных MySQL через компоненты ADO (драйвера ODBC). Пытаюсь вставить запись в таблицу следующим образом:

mainQuery.SQL.Append("INSERT INTO test (text) VALUES (:text_);");
mainQuery.Parameters.ParamByName("text_").Value:=t estDialog.full_name mainQuery.ExecSQL();

Проблема в том, что этот способ не работает с русскими символами (вставляются знаки "?"). Причём редактирование той же базы посредством компонентов типа DBGrid работает нормально.

В чём проблема? Понятно, что нужно подшаманить как-то с кодировкой, но как именно?

Параметры я пробовал создавать по-разному:

mainQueryParameters.CreateParameter("test_",ftWide String,pdInput, 300, testDialog.full_nameEdit.Text);
mainQueryParameters.CreateParameter("test_",ftStri ng,pdInput, 300, testDialog.full_nameEdit.Text);

со всеми вариантами-тоже самое.
Сервер- MySQL 5.1.30, Delphi 7. Кодировка базы данных-cp1251


 
turbouser ©   (2010-04-03 15:36) [1]


>
> prezervogaz   (03.04.10 14:06)  


> Я пытаюсь работать с базой данных MySQL

Забей. Возьми что нибудь нормальное.


 
sniknik ©   (2010-04-03 16:29) [2]

> что нужно подшаманить как-то с кодировкой, но как именно?
проверить всю цепочку, параметр - соединение - драйвер - сервер  везде должна быть одна кодировка.
проверь например без параметра, прописать русскими в запросе (не то чтобы так постоянно нужно делать, но проверка исключит параметр, и если получится ясно где не настроено)

+ где то видел, есть драйвера у которых этого нет в соединении, но можно задавать командой типа SET names xxx COLLATE xxxx.



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

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



Память: 0.45 MB
Время: 0.005 c
15-1317904579
handle
2011-10-06 16:36
2012.01.22
нужно корректно перевести на англ. фразу


1-1281096380
Evgeney
2010-08-06 16:06
2012.01.22
Поиск компонентов и применение параметров


2-1317559190
lesstab
2011-10-02 16:39
2012.01.22
Групповое редактирование выбранных строк в ДБГриде


15-1317719782
Сергій
2011-10-04 13:16
2012.01.22
Допоможіть розібратись!!! Будь-ласка...


15-1317641975
>|<
2011-10-03 15:39
2012.01.22
LOL




   Наверх