Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: CL | DM;

Вниз

ADOConnection. Не закрывается соединение с базой данных.   Найти похожие ветки 

 
Shura   (2004-05-11 13:08) [0]

Привет !
Суть проблемы: после запуска приложения устанавливаем соединение с БД ADOConnection.Open. Необходимо в процессе работы перезапустить клиента базы с другими параметрами, задаваемыми в строке ADOConnection.ConnectionString, значения берутся из реестра. Но после Close закрывается только ADO - подключение, а клиент базы не закрывается, и на Open открывается старое подключение.
ADOConnection.KeepConnection:=False.
После закрытия приложения связь рвется сразу, поэтому, как мне кажется, дело не в настройках клиента.
Пробовал найти окно и по хэндлу его закрыть, но тогда Open проходит без ошибок, а клиент вообще не запускается.

Спасибо.
--
Shura


 
Polevi ©   (2004-05-11 13:10) [1]

дело в кешировании соединения на уровне провайдера
смотри параметры подключения


 
Johnmen ©   (2004-05-11 13:28) [2]

>Но после Close закрывается только ADO - подключение, а клиент базы не закрывается

Разрывается соединение. А что значит "клиент базы не закрывается" вообще не ясно...

>ADOConnection.KeepConnection:=False.

А это-то зачем ? Чтобы лишний раз соединяться ?...


 
Shura   (2004-05-11 14:57) [3]

to Polevi: какие параметры, во всяком случае из доступных ни одного похожего на кэширование нет. Хотя по-моему это не в провайдере дело. Пробовал опыт: в процессе работы останавливаю программу в точке останова, делаю ADOConnection.Connected:=False и прерываю программу по Ctrl+F2 - клиент не закрывается, чего нет при нормальном завершении работы.

to Johnmen:
>Разрывается соединение. А что значит "клиент базы не >закрывается" вообще не ясно...

Может оно и разрывается, но не до конца:-). А клиент - это виндовое окно, которое висит в панели задач. После закрытия приложения оно закрывается автоматически.
ADOConnection.KeepConnection:=False - просто где-то на форумах видел что-то аналогичное по теме с таким советом. Может и лишний раз придется соединяться, но кэшированное соединение необходимо как-то закрыть, чтобы создать новое с другими параметрами ! Причем эта операция единичная.


 
KSergey ©   (2004-05-11 16:21) [4]

> [3] Shura   (11.05.04 14:57)
> А клиент - это
> виндовое окно, которое висит в панели задач.

В смысле  - это другое приложение запущено?? Или того-же приложени окно? Но как тогда оно может оставаться после Ctrl+F2??


 
Shura   (2004-05-11 17:21) [5]

>В смысле  - это другое приложение запущено??
Именно. Это стороннее ПО, через которое идет доступ к базе.



Страницы: 1 вся ветка

Текущий архив: 2004.05.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.03 c
1-1084956873
Alex_x
2004-05-19 12:54
2004.05.30
Как получить количество минут с DateTime


7-1082984818
Talla2k
2004-04-26 17:06
2004.05.30
работа с портом(232) через DLL и COM .Почему???


14-1083794584
AlerX
2004-05-06 02:03
2004.05.30
RPG что происходит внутри


1-1084810068
Berzercer
2004-05-17 20:07
2004.05.30
Как сложить временные переменные, если в сумме они больше 24?


1-1084567919
LORDMAXX
2004-05-15 00:51
2004.05.30
Где лежит номер лицензии Windows?