Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ADO & MSSQL Как проверить есть ли коннект? / 13 сообщений из 13, страница 1 из 1
27.05.2004, 10:22
    #32535988
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
VB6


В сети стоит сервер c базой . Можно ли не используя обработку ошибки через On error goto через объект ADO Connection проверить факт соединения? Т.е. сначала клиентская программа успешно выполнила коннект и во время каких либо действий юзера связь сетевая с сервером накрывается. Как проверить что коннект жив?

Просто когда работает клиентская программа по каким либо причинам может связь нарушиться с серваком ( выткнули провод сетевой например или напряжение на свичах отрубилось)
...
Рейтинг: 0 / 0
27.05.2004, 10:37
    #32536041
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
При работе с сервером лучше поступать так:
- получил соединение (c обработкой ошибок)
- выполнил работу (c обработкой ошибок)
- отключился
...
- получил соединение
- выполнил ...
и.т.д.
...
Рейтинг: 0 / 0
27.05.2004, 10:48
    #32536084
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
Под обработкой имеешь ввиду Он Эррор ?

Ну вот смотри клиентская программа законнектилась к серверу.
Юзер к примеру решил добавить запись , но в тот момент когда он добавляет запись с помощью рекордсета коннекта с серваком по какой либо причине уже нет. Стопор, как проверить что соединение дышит? Или только через обработку ошибок?

Вообще не мог бы ты в 2-х словах объяснить как работать с отключенным набором рекордсет в ADO. Держать все время коннект просто не нужно,сетка итак загрежена по полной.
...
Рейтинг: 0 / 0
27.05.2004, 11:23
    #32536186
Processor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
EternalКак проверить что коннект жив?
Используй свойство State объекта ADODB.Connection
...
Рейтинг: 0 / 0
27.05.2004, 11:26
    #32536199
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
Что вернет это свойство? True/false ?
...
Рейтинг: 0 / 0
27.05.2004, 11:53
    #32536310
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
Разобрался.Спасибо.
...
Рейтинг: 0 / 0
27.05.2004, 12:33
    #32536463
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
Блин черта с два. Пробую промоделировать ситуацию,когда нет коннекта и ...

Ставлю обработчик ошибки на обработчик ошибки On Error Goto процедуры коннекта к серверу ,а она не срабатывает. Вываливатся уже рантайм ошибка васика от том,что сервер недоступен.

Вот

Public Sub ConnectSQL()

On error Goto Handler

Set conn = New ADODB.Connection
conn.CursorLocation = adUseClient
conn.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Db1;Data Source=SERVER1"

conn.Open

exit_ConnectSQL:
exit sub
handler:
Msgbox "Сервер сдох ."

End Sub

Где то туплю.

Как через коллекцию ADO Errors перехватить ошибку коннекта? Чтобы прога не вываливалась!
...
Рейтинг: 0 / 0
27.05.2004, 12:45
    #32536508
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
вроде всё работает, проблема не в коде.
у меня как положено появился msg "Сервер сдох"

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Public Sub ConnectSQL()
    On Error GoTo handler
    
    Set conn = New ADODB.Connection
    conn.CursorLocation = adUseClient
    conn.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Db1;Data Source=SERVER1"
    
    conn.Open
    
exit_ConnectSQL:
    Exit Sub
handler:
    MsgBox "Сервер сдох ."
End Sub

Private Sub Form_Load()
    ConnectSQL
End Sub
...
Рейтинг: 0 / 0
27.05.2004, 14:08
    #32536745
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
Не в коде?
...
Рейтинг: 0 / 0
27.05.2004, 14:41
    #32536847
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
Разобрался , в настройках IDE васика дело было.
...
Рейтинг: 0 / 0
27.05.2004, 17:31
    #32537326
ulis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
а не проще просто проверить conn.State ?
И как работать с disconnected наборами - в мсдн кучка примеров
...
Рейтинг: 0 / 0
28.05.2004, 09:52
    #32538011
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
4ulis
такая ситуация : открываем коннект, state=1.
заходим на SQL сервер , отрубаем юзера ( kill ) .
Возвращаемся к юзеру смотрим : коннект.state =1.
Делаем withevents. Ставим обработчик на error.
Опять отрубаем, опять коннект.state =1.
Что не так ?
...
Рейтинг: 0 / 0
28.05.2004, 12:50
    #32538649
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO & MSSQL Как проверить есть ли коннект?
А разве State не выдает 1 если коннекшн открыт и 0 если закрыт?
То есть это свойство нужно , чтобы проверить открыт / закрыт коннект.
Если сервер стал в сети скажем не виден , то разве это свойство поможет?

Как использовать объект error ADO чтобы диагностировать проблему коннекта?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ADO & MSSQL Как проверить есть ли коннект? / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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