Dim Conn As ADODB.ConnectionPrivate Sub Form_Load() Dim errMsg As Boolean Set Conn = New ADODB.Connection errMsg = True On Error GoTo errsv Conn.ConnectionString = "Provider=SQLOLEDB.1; Password=nndk; Persist Security Info=True; User ID=sa; Initial Catalog=master; Data Source=ZHD" Conn.Open errMsg = False MsgBox "OK,连接成功" errsv: If errMsg = True Then '判断数据库服务器能否使用 MsgBox "请确定服务器,及登陆服务器的用户名、密码正确,并且服务器已开启", vbExclamation, "登陆错误" Exit Sub End If End Sub
利用sqldmo来读取所有在运行的sql数据库名称,然后进行比较 '变量s是你想知道的sqlserver的名称 Private function GetSqlServer(S as string) as boolean Getsqlserver=false Dim oSQLServerDMOApp As Object Dim i As Integer Dim namX As Object On Error Resume Next Set oSQLServerDMOApp = CreateObject("SQLDMO.Application") Set namX = oSQLServerDMOApp.ListAvailableSQLServers For i = 1 To namX.Count if s=namX.Item(i) then Getsqlserver=true Next cmbServer.ListIndex = 0
End Sub 使用 dim Sqlname as string dim State as boolean sqlname=数据库名称 state=GetSqlServer(sqlname) if state=false then msgbox "数据库没有运行" else msgbox "数据库在运行" end
Dim errMsg As Boolean
Set Conn = New ADODB.Connection
errMsg = True
On Error GoTo errsv
Conn.ConnectionString = "Provider=SQLOLEDB.1; Password=nndk; Persist Security Info=True; User ID=sa; Initial Catalog=master; Data Source=ZHD"
Conn.Open
errMsg = False
MsgBox "OK,连接成功"
errsv:
If errMsg = True Then '判断数据库服务器能否使用
MsgBox "请确定服务器,及登陆服务器的用户名、密码正确,并且服务器已开启", vbExclamation, "登陆错误"
Exit Sub
End If
End Sub
'变量s是你想知道的sqlserver的名称
Private function GetSqlServer(S as string) as boolean
Getsqlserver=false
Dim oSQLServerDMOApp As Object
Dim i As Integer
Dim namX As Object
On Error Resume Next
Set oSQLServerDMOApp = CreateObject("SQLDMO.Application")
Set namX = oSQLServerDMOApp.ListAvailableSQLServers
For i = 1 To namX.Count
if s=namX.Item(i) then Getsqlserver=true
Next
cmbServer.ListIndex = 0
End Sub
使用
dim Sqlname as string
dim State as boolean
sqlname=数据库名称
state=GetSqlServer(sqlname)
if state=false then
msgbox "数据库没有运行"
else
msgbox "数据库在运行"
end