![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Связывание таблиц [D6, IB6.x]
michael_b © (2002-08-23 10:14:00)Есть две таблицы:
Clients
ID Client
Orders
ID IDClient Order
нужно связать эти таблицы master-detail связью используя TIBQuery
с возмостью редектирования записей, полученных из TIBQuery запросом select...
Я делаю так:
1)кидаю на форму 2 TIBQuery: QueryMaster, QueryDetail,
QueryDetail.DataSource:=DataSourceMaster; {c ним связан QueryMaster}
QueryDetail.SQL.Add("select * from Orders where (IDClient=:ID)");
2)кидаю на форму 2 TIBUpdateSQL (для возможности редактирования)
UpdateSQLMaster, UpdateSQLDetail
3)устанавливаю соответсвенно свойства CachedUpdates в true у QueryMaster, QueryDetail
и сталкиваюсь с двумя проблемами:
1)Нужно поддтвердить кешированные изменения для главной и подчененной таблицы (master-detail) при попытке сделать это методом компонента TIBDataBase ApplyUpdates([QueryMaster, QueryDetail]); (где QueryMaster, QueryDetail :TIBQuery) происходит подтверждение кешированных изменений только для главной таблицы (QueryMaster)
2)при добавлении записи в подчененную таблицу (QueryDetail) полю должно IDClient должно присваиваться значения поля ID главной таблицы (QueryMaster).
PS И еще если кто знает киньте ссылочку с примером master-detail
связи с использованием TIBQuery (как у меня)
Заранее благодарен.
Johnmen (2002-08-23 13:09:00) [1]Перечисли еще раз проблемы (без описания твоих действий), по пунктам...
michael_b (2002-08-23 11:22:00) [2]
> Johnmen © (23.08.02 10:20)
проблемы остались те же
Johnmen (2002-08-23 10:20:00) [3]Настоятельно рекомендую использовать для указанных целей не TIBQuery, а TIBDataSet ! Если будут вопросы - задавай...