|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
31.03.2015, 17:01 | #1 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
Вопрос по связке двух таблиц (ClientDataSet1)
Добрый время суток форумчане.
Я хочу сделать связь между master (таблица «Depositary») и detail (таблица «Company»). Я сейчас разбираюсь с компонентом «ClientDataSet1», по этой статье http://www.delphiplus.org/programoro...lphi7_166.html, сказано, что «Свойство MasterSource определяет компонент TDataSource, который связан с главной таблицей» Но у меня «ClientDataSet1», уже связан с главной таблицей, компонентом «DataSetProvider1», по идее мне сейчас нужно в Свойство MasterSource, указать таблицу detail? Подскажите, где я запутался? Спасибо |
31.03.2015, 20:25 | #2 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,527
|
Цитата:
программа — запись алгоритма на языке понятном транслятору
|
|
31.03.2015, 22:55 | #3 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
У меня имеются таблицы деталей (aqDepositaty, 3 поля) и таблица фирм-поставщиков (aqCompany, 2 поля) (компонент ADOQuery).
Для отображения всей таблицы деталей в TClientDataSet, я взял компонент DataSetProvider1 и соединил его с aqDepositaty, а в свойстве ProvaderName (указал DataSetProvider1) (с отображением таблицы деталей получилось довольно не плохо). Но в таблице деталей, есть ссылки на таблицу фирм-поставщиков, которую я тоже хочу туда засунуть. В свойстве «МаsterSource» я указал таблицу фирм-поставщиков, но когда открыл свойство «MasterFields», то в окне DetailFields обнаружил поля таблицы деталей, а в «MasterFields» - поля таблицы фирм-поставщиков. Должно же быть наоборот (я имею ввиду с полями)? Я добавил "Joined Fields": получилось "provider_id"->"id", но после того, как я нажал "ОК", то у меня в результирующем "Grid" отобразилась всего лишь одна строка, хотя связей имели все строки? почему так? Последний раз редактировалось KBO; 31.03.2015 в 23:13. |
01.04.2015, 09:28 | #4 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,527
|
Цитата:
Цитата:
Для этого не нужны отношения Master ->Detials. Есть два пути. 1. Использовать Lukup поля (никогда ими не пользовался) 2. Использовать для вывода SQL соединения (join) таблиц Код:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 01.04.2015 в 09:30. |
||
01.04.2015, 12:19 | #5 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
Спасибо "evg_m",
с таблицей detail, точнее с количеством строк таблицы "Master" происходило именно то, что вы описали. Извиняюсь за назойливость, Но мне не очень понятно, в каком месте (компоненте) мне писать "select" c "join", если у меня по сути 2 БД, поэтому 2 "ADOQuery" и 2 "ADOConnection"???? |
01.04.2015, 12:33 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Если одна СУБД может общаться с другой, то в запросе к данным первой СУБД и двух соединений и Query не надо. Если не может, то ни где
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
01.04.2015, 12:51 | #7 | |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
Цитата:
А для запроса с нескольких серверов, как я прочел: нужно несколько ADOConnection и несколько ADOQuery, а потом чтобы совместить результаты с двух ADOQuery, можно взять какой-нибудь in-memory dataset. Я взял "ClientDataSet1" и теперь пытаюсь в нем соединить результаты... или не так? |
|
01.04.2015, 12:58 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Покажите картинку, которую нужно получить в форме
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
01.04.2015, 13:17 | #9 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
Вот пожалуйста ссылка https://www.dropbox.com/s/d7ai31dnd4lib7q/RBD.png?dl=0 , если вы имели это в виду
имеются БД компаний и БД деталей, я хочу получить "сводную таблицу" |
01.04.2015, 13:29 | #10 | |||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,527
|
Цитата:
Цитата:
Цитата:
программа — запись алгоритма на языке понятном транслятору
|
|||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
из двух таблиц одну | evdss | Microsoft Office Excel | 0 | 25.02.2015 16:58 |
ОБЪЕДИНЕНИЕ ДВУХ ТАБЛИЦ | BarakudaX777 | БД в Delphi | 11 | 05.03.2013 09:17 |
Вопрос про связь двух таблиц | Vactive | Microsoft Office Access | 1 | 27.11.2010 21:33 |
Выборка из двух таблиц | MSD | SQL, базы данных | 15 | 11.11.2010 00:58 |
Объединение двух таблиц | jekis2506 | Microsoft Office Excel | 5 | 15.04.2009 08:34 |