Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.19;
Скачать: CL | DM;

Вниз

Проблеммы с запросом ADOQuery с параметрами   Найти похожие ветки 

 
Noir ©   (2003-11-25 18:34) [0]

Вот какая беда тут у меня происходит. Не работает такая вот конструкция? то есть не возвращает результата никакого.

with DataModule2.q_chuser do
begin
if Active then Close;
SQL.Clear;
SQL.Add("Select * from users where nick= :p1");
Parameters[0].DataType:=ftString;
Parameters.ParamValues["p1"] := form2.Edit1.Text;
open;
end;
end;

Хотя следующий вариант работает отлично

with DataModule2.q_chuser do
begin
if Active then Close;
SQL.Clear;
SQL.Add("Select * from users where id_num= :p1");
Parameters[0].DataType:=ftInteger;
Parameters.ParamValues["p1"] := strtoint(form2.Edit1.Text);
open;
end;
end;

При подстановке вместо параметров четких значений в тело самого запроса все срабатывает.
Не подскажите ли в чем может быть моя ошибка?
Заранее благодарен.

D6, Oracle


 
Johnmen ©   (2003-11-25 18:40) [1]

Во-первых, я бы так написал
Parameters.ParamByName("pl").DataType:=...;
Parameters.ParamByName("pl").Value:=...;

А во-вторых, поле nick численное, а не символьное...


 
Vlad ©   (2003-11-25 18:43) [2]

>А во-вторых, поле nick численное, а не символьное...
Это почему ? :)

а так ?
with DataModule2.q_chuser do
begin
if Active then Close;
SQL.Clear;
SQL.Add("Select * from users where UPPER(RTRIM(LTRIM(nick)))= :p1");
Parameters[0].DataType:=ftString;
Parameters.ParamValues["p1"] := UpperCase(trim(form2.Edit1.Text));
open;
end;
end


 
Serg   (2003-11-25 18:44) [3]

так может она и не должна ничего возвращать?


 
Johnmen ©   (2003-11-25 18:45) [4]

>Vlad © (25.11.03 18:43) [2]
>Это почему ? :)

Вот это навело на мысль такую
strtoint(form2.Edit1.Text);


 
Vlad ©   (2003-11-25 18:47) [5]

А вот это ни на что не навело ? :)
>where id_num= :p1"


 
Johnmen ©   (2003-11-25 18:52) [6]

>Vlad © (25.11.03 18:47)

Да-да-да... Действительно, там nick, а там id_num :)))))
Не обратил внимания...:)


 
Noir ©   (2003-11-25 18:56) [7]

Vlad, большое спасибо. именно так и сработало. а по поводу where id_num= :p1 - это я просто эксперементировал на предмет живости работы с параметрами и вводом в поля числа мне известного.
Еще раз большое спасибо. Работает.


 
Shirson ©   (2003-11-26 11:37) [8]

Для чего удалять гланды ректально? Параметры - вариантовые, так используйте это на всё катушку.

with DataModule2.q_chuser do
begin
if Active then Close;
SQL.Clear;
SQL.Add("Select * from users where nick= :p1");
// Parameters[0].DataType:=ftString;
Parameters.ParamValues["p1"] := form2.Edit1.Text;
open;
end;
end;


 
Noir ©   (2003-11-26 12:10) [9]


> Shirson © (26.11.03 11:37) [8]
> Для чего удалять гланды ректально? Параметры - вариантовые,
> так используйте это на всё катушку.


Может быть инструмент коротковат, но гланды приходится удалять именно так, а Ваш вариант по непонятной причине не срабатывает.


 
Shirson ©   (2003-11-26 14:02) [10]

Странно. Везде срабатывает, а у вас - нет :)
Я таким вариантом и даты ищу, и integer, и string и чёрта в ступе. И всегда находится, что интересно :)


 
Noir ©   (2003-11-26 16:16) [11]


> Shirson © (26.11.03 14:02) [10]

Не спорю. Ответ на вопрос может лежать на поверхности, но пока я его не вижу.


 
sokohigh   (2003-11-26 17:07) [12]

а поле nick - наверное char, а не varchar?


 
Noir ©   (2003-11-26 17:37) [13]


> sokohigh (26.11.03 17:07) [12]

VarChar2(15) (для полной ясности) :).

А вообще, сдается мне что тут не порядки с настройками подкючения. Без каких либо извращений нормально отрабатывает только выборка по типу Integer. C дробными числами выборку пока не пробовал производить - нет надобности (да и полей в базе дробных нет). А вот что касаемо типов String, Date то здесь только срабатывает при преобразовании к String, в верхний(возможно нижний) регистр с обрезанием всех пробелов.



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

Текущий архив: 2003.12.19;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.018 c
1-62103
Санек
2003-12-08 13:39
2003.12.19
компонент Tanimate


3-61896
gestern
2003-11-27 21:48
2003.12.19
IBQuery


14-62253
Дремучий
2003-11-24 10:28
2003.12.19
Предложение по совершенствованию форума


7-62298
Nikk
2003-10-13 17:55
2003.12.19
Передача через ИК порт


8-62160
Winni
2003-08-24 18:49
2003.12.19
Можно ли найти какие-то мануалы по работе со звуком?