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

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

"Овободить" БД - ADO [D5, 2000, XP]


Access ©   (2007-03-18 17:49:00) 

Уважаемые мастера, не могу справиться со следующей ситуацией.
Приложение последовательно (не одновременно) работает с различными базами данных (структура баз данных совершенно одинакова, различаются содержанием).
ADOConnection в приложении единственное (ADOConnection1), формирую для каждой из баз свой ADOConnection1.ConnectionString.
По завершении работы с одной из баз данных пытаюсь сжать ее. Однако база данных не свободна, о чем свидетельствуют ldb-файлы баз данных, которые я открывал в приложении.
Все ADOQuery после Active-True возвращены в Active-False, а все ADOTable.Open - в ADOTable.Close

Пытался "освободить базы данных путем:

ADOConnection1.Connected:= False
ADOConnection1.KeepConnection:= False
ADOConnection1.Close
В общем не получаю желаемого результата.
Подскажите, пожалуйста, как мне "освободить" базу данных
Спасибо


Ант   (2007-03-18 20:14:00) [1]

Если предположить, что там какие то косяки на системном уровне (что в принципе не исключено), или предположить, что какие то косяки у тебя (что значительно более вероятно), то можно применить такой универсаьлный способ, как
- использовать на каждое подключение свой ADOConnection
Создавать в динамике, и как только операция с ним завершена - разрушать объект : ADOConnection.Free;

да и концептуально это правильнее


Наверх

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