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

SQL-запрос через ADO   Найти похожие ветки 

 
Yurikon   (2007-10-08 16:46) [0]

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

Делаю запрос к базе Access через ADO (драйвер Jet). Столкнулся со следующей проблемой: отбираемые поля содержат символы " " " и "." - драйвер выдает ошибку при сравнении, например (Поле1 = "aaaa.zzz").

Хотя в самом Access`е такой запром прокатывает.
Подскажите, плиз, как решить проблему?


 
sniknik ©   (2007-10-08 16:48) [1]

использовать параметры


 
Yurikon   (2007-10-08 16:54) [2]

В свое время отказался от использования параметров, так как
после выполнения

ADOQuery.Parametrs[0].Value := "aaaa.zzz";

по не понятным для меня причинам значение параметра менялось на старое ((.


 
Sergey13 ©   (2007-10-08 16:57) [3]

> [2] Yurikon   (08.10.07 16:54)

Радикальное решение. 8-)


 
Megabyte ©   (2007-10-10 14:01) [4]


> В свое время отказался от использования параметров, так
> какпосле выполненияADOQuery.Parametrs[0].Value := "aaaa.
> zzz";по не понятным для меня причинам значение параметра
> менялось на старое ((.

Чудеса бывают...


 
Sergey13 ©   (2007-10-10 14:16) [5]

> [4] Megabyte ©   (10.10.07 14:01)
> Чудеса бывают...

Особенно в своем коде. 8-)


 
Yurikon   (2007-10-10 17:15) [6]

Вернулся к использованию параметров - спец. символы (точки, кавычки) теперь запрос обрабатывает, спасибо!

Но! Значение строкового параметра, когда присваиваешь ему русские слова, отображает абрукадабру. Разве для параметров надо еще и charset клавиатуры указывать?


 
Yurikon   (2007-10-10 19:47) [7]

Подскажите, как в значение с типов OleVariant загнать русские буквы??

После выполнения этой строки

ADOQuery.Parameters[0].Value := "рус";

значение равно "@CA" ...


 
Megabyte ©   (2007-10-11 10:40) [8]

значение параметра равно этому???

> Подскажите, как в значение с типов OleVariant загнать русские
> буквы??

Почему OleVariant, если у тебя строковый тип? Либо ты не все сказал...

Попробуй так: ADOQuery.Parameters[0].AsString := "рус";


 
stanislav ©   (2007-10-11 15:55) [9]

тип параметра должен быть Widestring


 
stanislav ©   (2007-10-11 16:00) [10]

Megabyte ©   (11.10.07 10:40) [8] В ADO нет такого...


 
Yurikon   (2007-10-11 17:43) [11]

WideString - все верно, но бесполезно...

>Попробуй так: ADOQuery.Parameters[0].AsString := "рус";

А так нельзя, нет такого свойства.



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

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



Память: 0.47 MB
Время: 0.012 c
2-1202137997
tomkat
2008-02-04 18:13
2008.03.02
тип, больше Extended


2-1202118155
mephisto
2008-02-04 12:42
2008.03.02
Прочитать ячейку в памяти


15-1201435178
Kolan
2008-01-27 14:59
2008.03.02
Вот это да. Не спам, а шедевр.


2-1202286260
saNat
2008-02-06 11:24
2008.03.02
Чтение количество страниц в документе Word


15-1201686214
andreoman
2008-01-30 12:43
2008.03.02
Microsoft Word 9.0 что за версия ?




   Наверх