![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить результат SQL запроса (Firebird) [D7, XP]
d@nger © (2009-12-08 13:33:00)Здравствуйте! Допустим SQL запрос выдает несколько строк из таблицы. Каким образом из программы можно получать значения полей этой выборки?
d@nger (2009-12-11 06:59:00) [1]все спасибо! разобрался. нужно использовать next IBQuery. В своей программе я правда использую FIBQuery и вот мое решение:
sql:=TpFIBQuery.Create(nil);
with sql do
try
Database := fmain.my_database;
Transaction :=fmain.my_database.DefaultTransaction;
SQL.Text := 'select reg_num from documents where konvert_parent='+id;
ExecQuery;
s:='';p:='';
while not Eof do
begin
s:=s+p+Fldbyname['reg_num'].AsString;
p:=', ';
next;
end;
finally
sql.Free;
end;
в переменной s содержаться значения всех записей поля reg_num, через запятую, удовлетворяющих запросу.
d@nger (2009-12-09 06:25:00) [2]Приведите пример пожалуйста. Next чего? датасета?
Германн (2009-12-08 14:07:00) [3]
> но как мне обращаться то к этим записям в цикле?
Волшебное слово Next. Подробности в справке.
sniknik (2009-12-08 14:05:00) [4]> а как остальные записи то получить?
first 5, или убрать это, и условие чтобы получить все
> но как мне обращаться то к этим записям в цикле?
также как вне его
> что-нибудь типа
> MyVar:=MyQuery['MyField'];
d@nger (2009-12-08 14:01:00) [5]
> только в цикле.
ну хорошо.... в цикле.. но как мне обращаться то к этим записям в цикле?
d@nger (2009-12-08 13:58:00) [6]
select first 1 cena from massa where mas>=50
таким запросом можно получить первую запись выборки, а как остальные записи то получить?
Sergey13 (2009-12-08 13:57:00) [7]> [5] d@nger (08.12.09 13:53)
> да, через запятую
см.
> [1] RWolf © (08.12.09 13:39)
только в цикле.
d@nger (2009-12-08 13:54:00) [8]
> Запрос не выдает строки. :)
>
ну записей...
Германн (2009-12-08 13:53:00) [9]
> например запрос выдал 5 строк
Запрос не выдает строки. :)
d@nger (2009-12-08 13:53:00) [10]
> Все 5 значений в одну переменную? Через запятую что ли?
да, через запятую
Sergey13 (2009-12-08 13:51:00) [11]> [2] d@nger (08.12.09 13:47)
Все 5 значений в одну переменную? Через запятую что ли?
ЗЫ:Каша у тебя в голове, ИМХО. Лечится чтением умных книг.
d@nger (2009-12-08 13:47:00) [12]
> что-нибудь типа
> MyVar:=MyQuery['MyField'];
например запрос выдал 5 строк. как мне вывести значения всех 5 строк по полю MyField и записать их в переменную?
RWolf (2009-12-08 13:39:00) [13]что-нибудь типа
MyVar:=MyQuery['MyField'];