Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как закрыть и очистить пул соединений? / 21 сообщений из 21, страница 1 из 1
14.04.2010, 10:22
    #36577938
Joris
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Базы данных: MS Access
Проблема в том, что во время работы программы, при определенных условиях необходимо сжимать БД, и вот при сжатие БД все время ругается на открытое соединение с БД. Есть разные соединение вроде все конекта закрыл (а может где то отсалось) все равно ругается пока полностью не закрою программу, соединение не закрывается.
Вопрось: Как закрыть и очистить пул соединений БД...?
...
Рейтинг: 0 / 0
14.04.2010, 10:33
    #36577954
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Joris,

к Access подключаетесь из VB ?
...
Рейтинг: 0 / 0
14.04.2010, 10:50
    #36578002
Joris
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
да:
Базы данных: MS Access
Программа: Visual Basic 6.0
но разные подключения есть, т.е. переменые например cnn, con, db, и т.п.
...
Рейтинг: 0 / 0
14.04.2010, 11:18
    #36578091
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
надо не забывать делать cnn.Close перед тем, как переменная выйдет из зоны видимости или будет очищена вручную.
...
Рейтинг: 0 / 0
14.04.2010, 11:46
    #36578165
Joris
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Shocker.Pro,
Перепробовал все варианты закрытия. Ничего не помогло, пока полностью не закрою программу, соединение не закрывается.
...
Рейтинг: 0 / 0
14.04.2010, 11:59
    #36578204
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Joris,

Может в программе ConnectionDesigner создал свое подключение и оно висит?
...
Рейтинг: 0 / 0
14.04.2010, 12:00
    #36578209
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Локализуйте проблему.

Либо снизу:
Например, откройте соединение, сразу закройте его и попытайтесь сжать базу.

Либо сверху:
Урезайте свою программу до тех пор, пока эффект перестанет иметь место. Потом ищите то место, которое повлияло.
...
Рейтинг: 0 / 0
14.04.2010, 12:30
    #36578286
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Салкивался с такой проблемой, иногда помогало помимо close делать nothing, иногда не помогало.

Jah loves you.
...
Рейтинг: 0 / 0
14.04.2010, 12:33
    #36578293
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
AntonariyСалкивался с такой проблемой, иногда помогало помимо close делать nothing, иногда не помогало.

В ADO Nothing для рекордсетов и соединений надо делать всегда, иначе иногда вылезают неимоверные и труднопредставимые глюки
...
Рейтинг: 0 / 0
14.04.2010, 12:38
    #36578308
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
ну ка, давайте сюда ваш код сжатия. есть подозрение что вы не так делаете
...
Рейтинг: 0 / 0
14.04.2010, 12:40
    #36578314
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Konst_Oneну ка, давайте сюда ваш код сжатия. есть подозрение что вы не так делаете

С учетом того, что автор закрывает программу перед сжатием, он это делает просто аксессом. (имхо)
...
Рейтинг: 0 / 0
14.04.2010, 12:43
    #36578323
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
или батником, но при открытой базе в акцессе
...
Рейтинг: 0 / 0
14.04.2010, 13:38
    #36578489
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Konst_Oneну ка, давайте сюда ваш код сжатия. есть подозрение что вы не так делаете
+1
...
Рейтинг: 0 / 0
14.04.2010, 15:01
    #36578709
Joris
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Konst_Oneну ка, давайте сюда ваш код сжатия. есть подозрение что вы не так делаете

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
    Dim JRO As JRO.JetEngine
    Set JRO = New JRO.JetEngine
    
    Dim OldFile As String
    Dim NewFile As String


    OldFile = App.Path & "\OldTest.mdb"
    NewFile = App.Path & "\NewTest.mdb"
        
     If Con.State =  0  Then
            Con.Close
            Set Con = Nothing
     End If
     JRO.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0" & _
                                          ";Data Source='" & OldFile & "'" & _
                                          ";Jet OLEDB:Database Password=Test", _
                            "Provider=Microsoft.Jet.OLEDB.4.0" & _
                                          ";Data Source='" & NewFile & "'" & _
                                          ";Jet OLEDB:Database Password=Test"
        Set JRO = Nothing
...
Рейтинг: 0 / 0
14.04.2010, 16:44
    #36578985
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
и теперь привидите точную ошибку на метод JRO.CompactDatabase
...
Рейтинг: 0 / 0
14.04.2010, 16:44
    #36578986
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
*приведите
...
Рейтинг: 0 / 0
14.04.2010, 17:14
    #36579076
Joris
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Konst_One*приведите
...
Рейтинг: 0 / 0
14.04.2010, 17:26
    #36579107
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
проверяйте все свои рекордсеты, соединения, гриды и тп контролы с биндингом
все ресурсы надо освобождать.


PS
и самое главное, база данных не должна быть открыта в самом акцессе в момент этого действия
...
Рейтинг: 0 / 0
14.04.2010, 17:27
    #36579110
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
и ещё: зачем вам монопольный доступ в вашей программе для работы?
...
Рейтинг: 0 / 0
14.04.2010, 17:42
    #36579146
Joris
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
Konst_Oneпроверяйте все свои рекордсеты, соединения, гриды и тп контролы с биндингом
все ресурсы надо освобождать.

В начале объяснил, что у меня разные коннекты, можно искать и все дыки закрыть тогда не будет проблема. просто хотел узнать есть какой нубуд команда что бы автоматически освободил все ресурсы….

Konst_Oneи самое главное, база данных не должна быть открыта в самом акцессе в момент этого действия
+0,1
...
Рейтинг: 0 / 0
14.04.2010, 18:21
    #36579230
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрыть и очистить пул соединений?
JorisВ начале объяснил, что у меня разные коннекты, можно искать и все дыки закрыть тогда не будет проблема. просто хотел узнать есть какой нубуд команда что бы автоматически освободил все ресурсы….

Вряд ли.
Скорее всего, вам (если позволяют условия) надо сделать пул из переменных коннектов, сделать их глобальными и собрать в одном месте. Это позволит во-первых найти ошибки с незакрытыми коннектами (будет рантайм еррор при при попытке повторного открытия незакрытого соединения), а во-вторых позволит их разом закрыть при необходимости.

Это, имхо, наименее затратный способ "починить" программу. В дальнейшем уже нужно будет выносить в глобальные функции процедуру подключения к базе, а в идеале сделать класс работы с БД.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как закрыть и очистить пул соединений? / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]