![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ПОМОГИТЕ Пожалуйста с IBQUERY [D6, IB6.x]
digester © (2003-11-30 13:09:00)
Уважаемы мастера!
Могу связать 3 таблицы с помошью IBTable, причем 1 таблица главная, следующая вторая - подчиннная первой, а третья - подчинённая второй.
КАК ЭТО сделать с помошью IBQuery??? (Там нет такого свойства как Masterfields :(( ) Ответьте плз, очень надо, и небольшой примерчик если можно.
kaif (2003-11-30 14:33:00) [1]
IBQuery1.SQL.Text := "select a, b from table1";
IBQuery2.SQL.Text := "select c, d from table2 where c = :b";
IBQuery3.SQL.Text := "select e, f from table3 where e = :d";
DataSource1.DataSet := IBQuery1;
DataSource2.DataSet := IBQuery2;
IBQuery2.DataSource := DataSource1;
IBQuery3.DataSource := DataSource2;
IBQuery1.Open;
IBQuery2.Open;
IBQuery3.Open;
Перед открытием запрос 2 попробует найти параметр с имененм b как одноименное поле в наборе данных первого запроса. Это эквивалентно вызову метода
IBQuery2.ParamByName("b").AsInteger :=
IBQuery1.FieldByName("b").AsInteger;
(если поле b типа Integer, например)
Vemer (2003-11-30 14:14:00) [2]
У IBQuery есть свойство DataSource. Работает великолепно через параметры запроса.