Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / не получается закрыть соединение - ошибка 3704 / 25 сообщений из 33, страница 1 из 2
04.02.2022, 02:43
    #40131596
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
есть такой код

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Sub Кнопка4_Click()
    Dim objConnection, strSQL, polKl
    Set objConnection = CreateObject("ADODB.Connection")
    objConnection.Open "DRIVER={SQL Server};SERVER=NER;DATABASE=cca;UID=sa;PWD=11"
    Set polKl = CreateObject("ADODB.Recordset")
    Do
    strSQL = "UPDATE Статус SET  Статус.ВСети = -1 ;"
    polKl.Open strSQL, objConnection
    polKl.Close
    Loop
End Sub



но в этом месте polKl.Close - ругается ошибкой 3704 - операция не допускается если объект закрыт.

но если я не закрою - то бесконечно появляются новые TCP соединения.
я явно чтото не так делаю, но не соображу что или поздно уже и голова не варит или я чтото упустил ((
...
Рейтинг: 0 / 0
04.02.2022, 05:07
    #40131602
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar
Код: vbnet
1.
"UPDATE Статус SET  Статус.ВСети = -1 ;"

не возвращает записей такой запрос. Ошибка относится не к соединению.
Код бессмысленный... зачем бесконечный цикл?
...
Рейтинг: 0 / 0
04.02.2022, 05:18
    #40131603
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
решил написать, что примерно так должен выглядеть код на изменение записей
Nezar
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub Кнопка4_Click()
    Dim objConnection
    Set objConnection = CreateObject("ADODB.Connection")
    objConnection.Open "DRIVER={SQL Server};SERVER=NER;DATABASE=cca;UID=sa;PWD=11"
    Do
    objConnection.Execute"UPDATE Статус SET  Статус.ВСети = -1 ;", options:=adExecuteNoRecords 
    Loop
End Sub


но замечу - смысла в бесконечном цикле не вижу
...
Рейтинг: 0 / 0
04.02.2022, 10:51
    #40131629
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Панург,
код гораздо массивнее - просто весь не привожу. оставил только основную идею.
цикл нужен потому что мониторинг постоянный.
может запрос и не возвращает значений - но при каждом polKl.Open появляется и висит новое TCP подключение - что легко можно увидеть в мониторинге ресурсов.
...
Рейтинг: 0 / 0
04.02.2022, 10:52
    #40131630
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Панург,

Спасибо! Сейчас попробую с Execute
...
Рейтинг: 0 / 0
04.02.2022, 11:30
    #40131643
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar
Сейчас попробую с Execute
возможно нужен объект ADODB.Command , т.к.
Nezar
код гораздо массивнее


Nezar
цикл нужен потому что мониторинг постоянный.
надеюсь DoEvents в цикле используется?
...
Рейтинг: 0 / 0
04.02.2022, 11:54
    #40131652
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Панург
Nezar
Сейчас попробую с Execute
возможно нужен объект ADODB.Command , т.к.
Nezar
код гораздо массивнее


Nezar
цикл нужен потому что мониторинг постоянный.
надеюсь DoEvents в цикле используется?


честно говоря про ADODB.Command не слышал. если не сложно в двух словах подсказать - чем он лучше ADODB.Connection?

DoEvents - не использую. перед loop стоит sleep 500. или этого не достаточно?
тогда DoEvents после каждого objConnection.Execute делать?

в вашем примере ругнулось на options:=adExecuteNoRecords - я его вообще убрал и все вроде норм. или так нельзя делать?
...
Рейтинг: 0 / 0
04.02.2022, 12:42
    #40131658
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
после корректировок сейчас работает такой вариант.
он правильный или лучше чтото переделать?

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Private Sub Кнопка4_Click()
    Dim objConnection
    Set objConnection = CreateObject("ADODB.Connection")
    objConnection.Open "DRIVER={SQL Server};SERVER=NER;DATABASE=cca;UID=sa;PWD=11"
    Do
        objConnection.Execute"UPDATE ........"
	DoEvents
	'...... какойто код .......
	objConnection.Execute"INSERT ........"
	DoEvents
	'...... какойто код .......
	objConnection.Execute"UPDATE ........"
	DoEvents
	sleep 500
    Loop
End Sub
...
Рейтинг: 0 / 0
04.02.2022, 13:12
    #40131667
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar,

А зачем песконечный цикл?
Или выход все же предусмотрен?
...
Рейтинг: 0 / 0
04.02.2022, 13:22
    #40131670
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar
в вашем примере ругнулось на options:=adExecuteNoRecords - я его вообще убрал и все вроде норм. или так нельзя делать?
подключи библиотеку
...
Рейтинг: 0 / 0
04.02.2022, 13:25
    #40131672
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar
Код: vbnet
1.
DoEvents

для чего в данном месте столько раз этот метод? Ты для начала почитай справку...
...
Рейтинг: 0 / 0
04.02.2022, 13:27
    #40131673
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
ROI,

потому что бесконечный мониторинг.
выход предусмотрен, просто в рамках вопроса - это не важно.
...
Рейтинг: 0 / 0
04.02.2022, 13:28
    #40131674
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Панург
Nezar
Код: vbnet
1.
DoEvents

для чего в данном месте столько раз этот метод? Ты для начала почитай справку...


на сколько я знаю ожидает выполнения предыдущей команды, прорисовки и.т.д.
просто вы про него упомянули - подумал что туда стоит влепить )
...
Рейтинг: 0 / 0
04.02.2022, 13:31
    #40131675
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Панург
Nezar
в вашем примере ругнулось на options:=adExecuteNoRecords - я его вообще убрал и все вроде норм. или так нельзя делать?
подключи библиотеку


есть еще один момент - потом этот код перенесеться на VBScript
просто в аксе удобнее отладка, а заморачиваться с компиляторами для одноразовой небольшой работы не хочеться.

так вот, я в VBScript не селен и честно говоря не знаю как там подключить библиотеку.

на сколько критично что без adExecuteNoRecords работает?
...
Рейтинг: 0 / 0
04.02.2022, 14:58
    #40131696
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar
после корректировок сейчас работает такой вариант.
он правильный или лучше чтото переделать?

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Private Sub Кнопка4_Click()
    Dim objConnection
    Set objConnection = CreateObject("ADODB.Connection")
    objConnection.Open "DRIVER={SQL Server};SERVER=NER;DATABASE=cca;UID=sa;PWD=11"
    Do
        objConnection.Execute"UPDATE ........"
	DoEvents
	'...... какойто код .......
	objConnection.Execute"INSERT ........"
	DoEvents
	'...... какойто код .......
	objConnection.Execute"UPDATE ........"
	DoEvents
	sleep 500
    Loop
End Sub


Не плохая такая атака на SQL сервер(эй хозяева вы там дома?)
если это мониторинг - то чего?
Да есче через VBScript ("в котором не силен")
Хоть в кратце обрисуйте задачу плиззз!
К стати DoEvents не хилый такой тормоз (форма должна лихо так помаргивать вам глазками)
...
Рейтинг: 0 / 0
04.02.2022, 15:20
    #40131705
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
ROI,
уверен сервер переживет3 запроса в секунду, тем более это его задача запросы обрабатывать. ))
а sql серверу не все равно кто в него запросы шлет?
задачу обрисовал. или для ее решения обязательно нужно что и зачем мониторится?
формы нет вообще никакой. DoEvents все убрал. их изначально и небыло )
...
Рейтинг: 0 / 0
04.02.2022, 15:31
    #40131714
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar,

Ну если серверу больше нечего делать
То пусть только обновляет, вставляет и обновляет.(sleep=500 это 0,5 секунды)
У вас занятие и сервер при деле
...
Рейтинг: 0 / 0
04.02.2022, 15:43
    #40131715
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
ROI,

задача сервера сохранять новые данные - что он и делает.
или если вам каждую секунду нужно получать и сохранять новые данные - то вы ручкой на листике пишите, чтобы сервер не дай Бог не нагрузить? ))

sleep=500 это 0,5 секунды - спасибо за столь ценную информацию.
но как я уже писал выше - код сложнее и задержка больше. вы наверное не прочитали.

как всегда ваши посты полны ценной информации...
...
Рейтинг: 0 / 0
05.02.2022, 09:11
    #40131849
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar
ROI,

задача сервера сохранять новые данные - что он и делает.
или если вам каждую секунду нужно получать и сохранять новые данные - то вы ручкой на листике пишите, чтобы сервер не дай Бог не нагрузить? ))

sleep=500 это 0,5 секунды - спасибо за столь ценную информацию.
но как я уже писал выше - код сложнее и задержка больше. вы наверное не прочитали.

как всегда ваши посты полны ценной информации...

Я уже спросил "Хоть в кратце обрисуйте задачу плиззз!"
Тогда может чего-то и появиться в качестве информации.
Как выясняется с VBScript вы не дружите.
Ладно прехали удачи
...
Рейтинг: 0 / 0
05.02.2022, 09:42
    #40131850
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar,

К стати извените, сразу не разобрался с кем имею дело.
Глянул в профиль ба да ето же Nezar.
Больше не повториться.
...
Рейтинг: 0 / 0
05.02.2022, 13:31
    #40131876
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
ROI
Nezar,

К стати извените, сразу не разобрался с кем имею дело.
Глянул в профиль ба да ето же Nezar.
Больше не повториться.


с вами все понятно ))
...
Рейтинг: 0 / 0
05.02.2022, 14:20
    #40131881
Лапух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
ROI
ба да ето же Nezar.

Это какой та - криминальный авторитет что ли
Или ещё круче - Проректор - Универа им. Баумана?
Вааще жесть неимоверная.
Если за руку ручкались, то по любому я бы пару лет руки не мыл и всем рассказывал с кем смог порукопожаловаться.
Или я нагнетаю непреднамерено, не зная истинной подоплёки сего восхищения и преклонения?
Тоже как бы заранее - Хочу.
...
Рейтинг: 0 / 0
05.02.2022, 21:50
    #40131942
ИВП
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Правило про "-тся" и "-ться" - самое трудное в русском языке.
Не можешь запомнить, есть выход - используй "-цца", не ошибёшься.

извЕните, если кого обидИл.
...
Рейтинг: 0 / 0
05.02.2022, 22:01
    #40131944
Nezar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
ИВП
Правило про "-тся" и "-ться" - самое трудное в русском языке.
Не можешь запомнить, есть выход - используй "-цца", не ошибёшься.

извЕните, если кого обидИл.


что вы что вы. три слова, на всю тему, с указанной ошибкой, безусловно стоили вашего внимания.
жаль что большинство из тех кто остался на форуме - просто филологи ((
...
Рейтинг: 0 / 0
05.02.2022, 22:16
    #40131945
Лапух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не получается закрыть соединение - ошибка 3704
Nezar
...жаль что большинство из тех кто остался на форуме - просто филологи...

А я ещё 2 или даже 3 дня назад говорил:
Тут только болтуны остались.
Всех хоть чуть чуть мало значимых челов, я уже давно, льстивыми посулами, переманил на другой форум.
В сюда заходят только те, кто просто любит постебаться над начинающими, типа тешат своё самолюбие и высокомерие.
Что видно просто по количеству тем и вопросов-ответов за период времени.
Иных причин я просто не вижу.
Не уже ли я просто слеп и не вижу тайного сакрального смысла?
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / не получается закрыть соединение - ошибка 3704 / 25 сообщений из 33, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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