首页 > 解决方案 > 检查服务器是否可达

问题描述

我使用下面的代码通过 VBA 连接数据库。有没有办法检查服务器何时关闭并导入一行代码以获取消息框?

Public Const DbCn = "Driver={SQL Server};Server=10.10.10.10;Database=dbTest;Uid=user;Pwd=1234567890;"

Dim rs As ADODB.Recordset

Set rs = New ADODB.Recordset

With rs
    .Open SqlStr, DbCn, adOpenStatic, adLockReadOnly
    If Not .EOF Then

    End If
    .Close
End With
Set rs = Nothing

标签: exceldatabasevba

解决方案


您可以在连接到 db 时捕获错误:

'enable to catch an error
on error resume next
'attempt to connect to db
rs.Open SqlStr, DbCn, adOpenStatic, adLockReadOnly
'if there's an error when connecting to db, do whatever you want to do
if err.number <> 0 then msgbox err.number
'reset error handling procedure
on error goto 0

可能有更好的解决方案,但这对我有用。


推荐阅读