![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
запрос с параметром [D6, dBase, FoxPro]
cyrius © (2005-11-09 11:58:00)Помогите решить следующую проблему (прежде никогда не сталкивался).
Работаю в Delphi 6. Программа управляет информацией из dbf-файлов через ADO, используя для этого поставщик данных Microsoft Jet 4.0 (так надо). Есть компанент типа TADOQuery, содержащий sql запрос с одним параметром. Этот параметр используется для поиска определеннх записей и его значение вводится пользователем в поле TEdit.
Проблема в следующем: при передачи введенной строки в параметр SQL-запроса, Delphi искажает его кодировку на непонятную мне (например, слово 'иванов' превращается в '820=>2'). Такое происходит только с русскими словами. В результате запрос выдает пустой результат, хотя я точно знаю, что это не так (проверял в MS Access) Для передачи строки в параметр запроса использую следующую контрукцию:
ADOQuery1.Parameters[0].Value := Edit1.Text
Этой конструкцией пользовался не один раз, но с таким глюком столкнулся впервые. Перепробывал всевозможные строковые типы данных параметра, но не помогло. К сведению: у меня установлена OS Windows XP + SP2 и русский MUI к нему. Готов уже даже грешить на ось. Помогите, пожалуйста.
ANB (2005-11-09 12:33:00) [1]Еще попробуй :
ADOQuery1.Parameters[0].DataType := ftString;
ANB (2005-11-09 12:29:00) [2]Строка коннекта неправильно настроена. Или в таблицах неправильная кодировка.