Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2012, 19:38   #1
haker270
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 24
По умолчанию после напсание запроса виснет таблица

Добрый вечер!
Второй день ломаю голову не могу разобраться
Есть главная таблица Турнир и другие Игроки, Матчи. Турнир и Матчи связаны между собой и Матчи и Игроки тоже
Организовал связь master-detail между Турнир и Матчи, при нажатии на турнир показывает матчи.
Хочу сделать, чтобы при нажатии на турнир показывало игроков, участвующих в нем. Как правильно сделать
Таблица турнир состоит из полей
ИД_Т, ИМЯ_Т
Таблица Матчи состоит из
ИД_Т, ИД_И1, ИД_И2
Таблица Игроки состоит из
ИД_И, ИМЯ_И
Турнир и Матчи связаны по ИД_Т
Матчи и Игроки связаны по ИД1_И=ИД_И и ИД2_И=ИД_И
Добавил ADOQuery и написал код
Цитата:
SELECT Игроки.ИД_И, Игроки.ИМЯ_И, Матчи.ИД_И1, Мачти.ИД_И2, Матчи.ИД_Т
FROM Игроки, Матчи
WHERE (Матчи.ИД_И1=Игроки.ИД_И Or Мачти.ИД_И2=Игроки.ИД_И) and Матчи.ИД_Т=:ИД_Т
в DataSource указал Турнир
Оно то работает, но таблица Турнир очень виснет и я не знаю как отфильтровать в новой, чтобы отображало одних игроков, т.е. имена и не повторялись данные
haker270 вне форума Ответить с цитированием
Старый 16.11.2012, 21:40   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
но таблица Турнир очень виснет
Что там так много записей?
Цитата:
т.е. имена и не повторялись данные
Код:
SELECT distinct...
тогда повторы будут отбрасываться.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.11.2012, 01:21   #3
haker270
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 24
По умолчанию

ну в таблице матчи 45 000 записей
турниры 1600
игроки 15 000


сейчас меня другой вопрос волнует, возможно ли к одному adoquery подключить две таблицы по схеме master-detail, т.е.
Турнир(master) --> Матчи (detail) <--Игроки(master)
haker270 вне форума Ответить с цитированием
Старый 17.11.2012, 07:48   #4
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

попробуй соединять по 1 столбцу...и смотрите где происходит затык. 45000 записей это мелочь. Так что проблема у Вас в запросе
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод ответа после WQL запроса DarkZiMAN Помощь студентам 0 02.04.2012 22:30
Окно после выполнения запроса mortal2010 Microsoft Office Access 6 25.02.2011 13:18
Вывод результата после запроса Hamsi БД в Delphi 1 07.12.2010 17:00
Получение Куков после запроса. )Игнат( Работа с сетью в Delphi 4 26.10.2010 22:07
Виснет вся система после входа в Интернет DeKot Компьютерное железо 12 29.04.2009 00:06