Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 28.02.2010, 11:10
atstoy atstoy вне форума
Прохожий
 
Регистрация: 28.02.2010
Сообщения: 1
Репутация: 10
Плохо SQL-запрос (связанные таблицы)

Здравствуйте, не могу разобраться с запросом.
Есть база Access c тремя таблицами.
Поля Tab1: id_1, name_1
Поля Tab2: id_2, id_1, id_3, name_2
Поля Tab3: id_3, name_3.
Связи: Tab3.id_3= Tab2.id_3 (один ко многим), Tab1.id_1= Tab2.id_1 (один ко многим).

ADOQuery1:
Select Tab1.ID_1, Tab1. name_1
from Tab1

ADOQuery2:
Select
Tab2.ID_2, Tab2.ID_1, Tab2.ID_3, Tab2. name_2,
Tab3. id_3, Tab3. name_3
FROM Tab3, Tab2
where Tab3.ID_3 = Tab2.ID_3

В DBGrid1 - ADOQuery1 (Tab1), в DBGrid2 – ADOQuery2 (Tab2 и Tab3).
До этого момента все понятно.
Нужно сделать так, чтобы если кликаешь в строчку DBGrid1 то, в DBGrid2 должны отображаться строки соответствующие id_1.
То есть, если кликаешь в DBGrid1 где ID_1=6 (Tab1.ID_1=6), то в DBGrid2 должны отображаться только строки ID_1=6 (Tab2.ID_1=6).
Ответить с цитированием
  #2  
Старый 01.03.2010, 09:55
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

В ADOQuery2 сво-во DataSource выставить равным DataSource от ADOQuery1. А в запросе ADOQuery2 последнюю строчку
поменять на (или дописать через AND):
Код:
Tab3.ID_3 = :Tab1.ID_3

Последний раз редактировалось TOJluK, 01.03.2010 в 09:59.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 07:00.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter