Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

2 активные БД (ODBC) [D6, HyTech]


Apv ©   (2004-06-22 17:42:00) 

Добрый день. Помогите, плиз, в решении следующей проблеммы:
Delphi 6. СУБД HyTech через ODBC (2 БД).
2 компонента TDataBase каждый на своем коннекте.
Оба активны.
Запрашиваю данные из 1 БД.
Выполняю вставки во вторую БД.
Необходимо удалить строку из 1, но при этом запрос на удаление проходит почему-то во второй.
В дебаге все Ок - TQuery.DataBase стоит 2, но запрос проходит в 1.
Такое ощущение, что когда я начинаю работать со второй БД, первая автоматически переключается на нее же.

Выход нашел: при переходе с обной БД на другую выпорлняю реконнект. Но такое решение не подходит, т.к. жутко увеличиватся время.

Подскажите, плиз, в чем может быть дело.


Reindeer Moss Eater   (2004-06-22 19:17:00) [1]

Reindeer Moss Eater: Пробовал, не помогает.
Такого (при настройке TDatabase на разныеисточники) не бывает. Потому что такого быть не может.


Apv   (2004-06-22 18:02:00) [2]

Курдль, поясни, плиз. SQL Direct?

Насколько я понмаю, TDataBase и работает через БДЕ, но источником данных является ODBC... что-то типа того, точнее не сформулирую.


Курдль   (2004-06-22 17:57:00) [3]

А разве TDataBase работает через ODBC? Я думал через BDE...
Просто я много лет успешно работал с ODBC через SQL Direct.


Apv   (2004-06-22 17:55:00) [4]

Reindeer Moss Eater: Пробовал, не помогает.
Т.е. был тот же вариант, но с 2 сессиями и все TQuery и TTable были разбросаны по ним - то же самое. Может какие-то еще настройки надо выставить?

Курдль: Вариант, но не подходит - выполнение должно быть последовательным. ;-(


Курдль   (2004-06-22 17:50:00) [5]

1. Запросить данные из БД1
2. Составить скрипт
3. Прогнать на БД2
Можно обойтись и одним TDataBase


Reindeer Moss Eater   (2004-06-22 17:46:00) [6]

Два явных экземпляра TSession не помешают.

TQuery.SessionName := Каждому свою


Наверх

Титульная страница Поиск, карта сайта Написать письмо