![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADOQuery [D7, MSAccess]
amadey_motzart © (2008-12-08 11:42:00)Доброго дня, Мастера!
Есть динамический запрос:
Query1.Close;
Query1.SQL.Clear;
Query1.Parameters.ParamByName('D1').Value:=listbox1.Items.Strings[(listbox1.item index)];
Query1.SQL.Add('select * from place Where data=:D1');
Query1.Open;
пишетт: Параметр D1 не найден :-(
вопрос: в чем причина и как правильно передавать параметр в динамический запрос ADOQuery?
Ega23 (2008-12-08 11:58:00) [1]Если совсем правильноЮ то:
var
param : TParameter;
begin
with Query1 do
begin
if Active then Close;
parameters.Clear;
SQL.Text := 'Select * from place where data=?';
param := parameters.AddParam;
param.Name := 'D1';
param.DataType = ... (вот тут я не знаю, какой у тебя тип данных. Сам выбирай)
param.Direction := pdInput;
Parameters.PramByName('D1').Value := ... (зависит от типа параметра)
try
Open;
except
....
end;
end;
amadey_motzart (2008-12-08 11:46:00) [2]Параметр D1 not found .......
ANB (2008-12-08 11:43:00) [3]Query1.Close;
Query1.SQL.Text := 'select * from place Where data=:D1'; Query1.Parameters.ParamByName('D1').Value:=listbox1.Items.Strings[(listbox1.item index)];