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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2012, 20:15   #1
delphicoding
Заблокирован
 
Регистрация: 04.07.2011
Сообщений: 261
Вопрос Можно ли создать автосборный Dataset из двух других?

Здравствуйте!
Может знаете можно ли как-то собрать из FIBDataset1 и FIBDataset2 избранные(!) данные в FIBDataset3 и затем, чтобы при обновлении 1,2 сборный 3 сам так же обновлялся???
delphicoding вне форума Ответить с цитированием
Старый 18.03.2012, 21:33   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А почему не описать для 3-го запрос, который будет учитывать условия отбора из первого и из второго датасетов? Или они принадлежат разным БД?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.03.2012, 21:39   #3
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Цитата:
чтобы при обновлении 1,2 сборный 3 сам так же обновлялся
Если все датасеты принадлежат одной БД, то это и есть Представление (View), то бишь вьюха.

Последний раз редактировалось _SERGEYX_; 18.03.2012 в 21:44.
_SERGEYX_ вне форума Ответить с цитированием
Старый 18.03.2012, 21:45   #4
delphicoding
Заблокирован
 
Регистрация: 04.07.2011
Сообщений: 261
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А почему не описать для 3-го запрос, который будет учитывать условия отбора из первого и из второго датасетов? Или они принадлежат разным БД?
Очевидно. Но не подходит. Нужно то, что описано в начале темы.
Цитата:
Сообщение от _SERGEYX_ Посмотреть сообщение
Если все датасеты принадлежат одной БД, то это и есть Представление (View), то бишь вьюха.
Задача собрать данные из 2 Dataset в 3й Dataset - то есть это просходить должно внутри программы, а View они внутри БД. Некатит.
delphicoding вне форума Ответить с цитированием
Старый 18.03.2012, 21:48   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Но не подходит.
А почему? просто из академического интереса? Не хочешь сервер напрягать?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.03.2012, 21:49   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Собрать данные можно, например в ClientDataSet. И не автоматом, а самому перегнать в него информацию. Соответственно и обновление самому делать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 18.03.2012, 22:10   #7
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Можно и в ClientDataSet перегнать, но этот цикл будет повторяться при каждом изменении первых двух датасетов. Лучшей нагрузки на проц не придумать...
Я плохо представляю ситуацию, когда нельзя с UNION объединить два запроса, как Stilet предложил. Кажется, ТС сам толком не знает, чего хочет.
_SERGEYX_ вне форума Ответить с цитированием
Старый 18.03.2012, 22:17   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
цикл будет повторяться при каждом изменении первых двух датасетов
Не обязательно, можно, например, в AfterPost перегонять только нужную информацию. А то что ТС сам не знает что ему нужно, так это 100%
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 18.03.2012 в 22:20.
Аватар вне форума Ответить с цитированием
Старый 19.03.2012, 11:37   #9
delphicoding
Заблокирован
 
Регистрация: 04.07.2011
Сообщений: 261
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А то что ТС сам не знает что ему нужно, так это 100%
Цитата:
Сообщение от _SERGEYX_ Посмотреть сообщение
Кажется, ТС сам толком не знает, чего хочет.
То есть когда я спрашиваю как сделать так, как вы не знаете и возможно Delphi не умеет - вы пытаетесь это тупо объяснить этим... не смешите.
Цитата:
Лучшей нагрузки на проц не придумать...
Я тебе намекну - а зачем вообще проц на клиентской машине работы с клиент-серверной БД?
Цитата:
Собрать данные можно, например в ClientDataSet. И не автоматом, а самому перегнать в него информацию. Соответственно и обновление самому делать
Ну да, вручную-то можно. Надеялся в Delphi есть средство автоматизации данного процесса.
delphicoding вне форума Ответить с цитированием
Старый 19.03.2012, 12:13   #10
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
Ну да, вручную-то можно. Надеялся в Delphi есть средство автоматизации данного процесса.
Зачем Delphi делать то, что прекрасно умеет делать любой SQL сервер.
Причем используя различные внутренние механизмы оптимизации данного процесса. К вопросу о нагрузке на сервер. Любой программист знает это и не пытается поручить Delphi (клиентсой программе) задачи предназначенные серверу БД.
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


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

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в Dataset создать дубликат колонки? delphicoding Общие вопросы Delphi 11 19.03.2012 19:11
Расчет данных одного диапазона по двум критериям двух других alexsampler Microsoft Office Excel 4 29.07.2011 18:08
Выбор значения относительно двух других oleg_sh Microsoft Office Excel 8 05.12.2010 19:52
Можно ли в DataSet установить relationship междщу таблицами? GenniY БД в Delphi 3 25.06.2010 12:23
Как сделать БД на основе двух других PARTOS Microsoft Office Excel 8 11.12.2009 07:54