Вниз
Скачать: CL | DM;

Связанные таблицы, запросы по запросам...   Найти похожие ветки 

 
Lancelot ©   (2003-03-16 23:48) [0]

Здравствуйте, коллеги. Извините за глупый вопрос, но можеть быть, кто-нибудь поможет?..

Предположим, у нас есть 2 таблицы со связью мастер-деталь (и, соответственно, есть ADOConnection, 2 штуки ADOQuery (MasterQuery и DetailQuery) и 2 DataSource (MasterDS и DetailDS)).

«…Запрос для MasterQuery:

select VendorNo, VendorName, Country, City, State, Preferred
from vendors

Запрос в DetailQuery должен выбирать только те записи, VendorNo в которых является текущим в MasterDS.Dataset. Для этого установим свойство DataSource компонента DetailQuery в значение MasterDS.
Запрос для DetailQuery следующий:

select PartNo, OnOrder, OnHand, ListPrice, Description, Cost
from parts
where VendorNo = :VendorNo

:VendorNo в части where – параметр запроса. Параметры при установленном DataSource берутся из него.»

Вышеприведенный текст взят из статьи Д. Сидорова «Компоненты ADO», которую часто можно встретить во всяких интернетовских факах, библиотеках т.п. И надо сказать, черт подери, что это все работает! Работает, пока у нас не заведется третья таблица - субдеталь, для которой мастером будет DetailQuery.
Увы, тогда аналогичный запрос по результатам этой (DetailQuery) выборки не будет возвращать ни-чер-та.
Можно ли это обойти? или так и должно быть?
Заранее багодарю.


 
alex55 ©   (2003-03-17 00:05) [1]

Я на этой третьей таблице раньше видел много глюков. Обычно удавалось их победить, обработав "вручную" события связанные с перемещениями в мастер-таблице.


 
Lancelot ©   (2003-03-17 00:12) [2]

Гм, я так и делаю. Но душа хочет прекрасного, ведь СУБД у нас же такая умная, ну пусть сама записи и фильтрует...


 
alex55 ©   (2003-03-17 00:28) [3]

СУБД-то может и умная, да вот с выпуском новых версий Delphi спешат некоторые - не успевают старые ошибки исправить, а уже новые накатились.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
14-6775
hooch
2003-03-15 11:39
2003.04.03
Блок-Схемы и диаграммы


3-6342
Vladislav1
2003-03-14 10:21
2003.04.03
Как создать временную таблицу?


1-6481
LyzD
2003-03-24 11:38
2003.04.03
Свернуть программу после запуска


14-6681
Дмитрий К.К.
2003-03-18 06:17
2003.04.03
Именинники 18 марта


3-6301
гончий
2003-03-17 09:59
2003.04.03
Управление пользователями и их правами в IB




   Наверх