|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.04.2012, 18:12 | #1 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
Сохранение данных при переподключении базы
Здраствуйте, подскажите как выдти из затруднительной ситуации...
Вообшем суть пробелмы в том что прога конектится к разным базам и выполняет один запрос. Допустим есть два DbGrid`a подключаемся к первой базе, выполняем запрос, даныне видим, делаем переподключение к другой базе, данные из перовго DBGrid`a пропадают... Как сохранять даные в дб гриде при переподключении базы? Использется IBDatabase, использовать несколько датабесов не вариант, т.к. таких подключений может быть неизвесное количество... |
21.04.2012, 18:23 | #2 |
Форумчанин
Регистрация: 26.03.2012
Сообщений: 665
|
Использовать ClientDataSet.
|
21.04.2012, 18:55 | #3 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
Эм, почитал про этот компонент, он мне не совсем подходит...
НУ и немного подумав я понял что проблема не в ДБгрид а в IBQuery, оно делает Close каждый раз когда делается запрос в другую базу, тут возникает вопрос, либо надо создать несколько IBQuery, либо не трогать его пока не опросит все базы, но тут возникает другая проблема результаты запроса из каждой базы надо записывать в новую таблицу для этого скорее както надо организовать разное подключение к DataSource, т.е. надо както сделать так чтоыб при получании данных из новой базы динамически создавался DataSource и новый DBGrid и соотвествено новый IBQruery потмоу что если менять DataSource связть также разорвётся и написав всё это я понял что надо искать другой подход к отображению данных, ну или подскажите как это всё можно организовать) |
21.04.2012, 19:21 | #4 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
ок, начнём помаленьку, подскажите пожайлуста, как динамически создать DBGrid на закладке TabControl под номером N ?
|
21.04.2012, 19:28 | #5 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
Даже если так делать то лучше будет если это будет сделано в виде фреймов, на которых свои гриды и свои отдельные компоненты доступа к данным.
I'm learning to live...
|
||
21.04.2012, 19:33 | #6 |
Форумчанин
Регистрация: 26.03.2012
Сообщений: 665
|
Чтобы запрос пошел на другую базу, надо менять контекст, т.е. именно сменить IBDatabase или переконектить его, что по сути одно и тоже.
Один IBQruery вам не поможет. А вот что вы хотите в итоге получить не очень понятно. Если на каждую базу иметь по гриду, тогда придется делать столько же контекстов ( IBDatabaseХ - IBQrueryХ - DataSourceХ - DBGridХ ), и при чем все активные, пока данные хотите видеть. Вариантов показа хватает, например TabControl, еще MDI можно (но это уже устарело) ... |
21.04.2012, 19:39 | #7 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
ну как раз на закладках TabControl каждую таблицу и хочу отображать
ДА я понимаю что придётся делать отдельный набор компонентов на каждое подключение, но пока я невижу альтернативного отображение даных, есть конечно вариант, получать в невидимый ДБгрид данные и изнего переносить в стринг грид и просто дописывать даные указывая из какой базы они получены, но этот вариант я оставлю когда уже совсем ни чего не будит получатся... |
21.04.2012, 19:53 | #8 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
Подскажите что в парент написать? А то чото ни чо подобрать не могу
Код:
|
21.04.2012, 19:54 | #9 |
Форумчанин
Регистрация: 26.03.2012
Сообщений: 665
|
Ну для переноса данных в StringGrid невидимого дбгрида вовсе ненадо иметь, у вас уже есть датасет (IBQruery), его вполне достаточно.
А откуда взялось много баз и где они расположены? Может сделать еще одну, либо таблицу в какойнить "главной" и туда сливать данные с указанием исходной, а отображать уже оттуда? |
21.04.2012, 19:57 | #10 | |
Форумчанин
Регистрация: 26.03.2012
Сообщений: 665
|
Цитата:
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка при создании Базы Данных | YaMolekula | C/C++ Базы данных | 3 | 31.10.2011 16:03 |
сохранение/считывание данных при закрытии/открытии программы | Ирида | C++ Builder | 3 | 21.10.2011 13:48 |
Проблемы при записи и считыванияиз базы данных | Aleksandr | Общие вопросы Delphi | 5 | 14.06.2011 23:52 |
Сохранение данных при совместном доступе | ELE-COM | Microsoft Office Excel | 7 | 16.05.2010 20:45 |
Сохранение и загрузка узлов TreeView из базы данных | Ko$tello | Компоненты Delphi | 1 | 14.11.2006 17:15 |