![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Добрый вечер.Возника проблема
Код:
Adoquery.parameters. parambyname('par').value:=edit.textВставляю запись в базу mysql есль вславляю латинские символы все проходит ,а если керилица то вылетает ошибка incorrect string value Если не использовать параметры а динмиеский запрос все нормально. Почему так происходит и как можно исправить |
|
#2
|
||||
|
||||
|
Код:
parambyname('par').AsString := 'foo' |
|
#3
|
|||
|
|||
|
Пробовал так как вы говорите ошибка
Tparameter does not contain a mamber named AsString [dcc32 Error] AddUnit.pas(75): E2003 Undeclared identifier: 'AsString' И так делал Код:
Adoquery.parameters. parambyname('par').DataType:=ftString;
Adoquery.parameters. parambyname('par').value:=edit.text; |
|
#4
|
||||
|
||||
|
Очень похоже на несоответствие кодировок, вероятно подразумевается юникод utf8, а на самом деле передаётся напр. 1251. Возможно нужно кодировку установить прнудительно (типа charset=utf8), автоматом видимо это не происходит
|
|
#5
|
|||
|
|||
|
Я так тоже думал но я использую ОДБС драйвер mySQL Unicode так что должно все автоматом работать самое интересное
что если делаю так Код:
ADOQueryTMC.SQL.Add('VALUES (');
ADOQueryTMC.SQL.Add('('''+ComboBoxKontr.Text+'''),');Все Ок А если так Код:
ADOQueryTMC.SQL.Add('VALUES (');
ADOQueryTMC.SQL.Add(':Nkontr,'); ADOQueryTMC.Parameters.ParamByName('NKontr').Value:=ComboBoxKontr.text;так что глюк где то в Paramby.Value Конечно это не принципиально как задавать запрос, но просто хотел попробовать использовать параметры |