![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
"Овободить" БД - 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;
да и концептуально это правильнее