诚心求教_关于对数据库状态实时监测的问题

luozhengeast 2004-07-29 04:22:32
我做了一个局域网应用程序,在各个客户端访问服务器上的数据库(SQL SERVER), 现在我想做到当服务器上的数据库关闭时,客户端机器能及时监测到,这样我就可以给用户一个明确的通知。
请大家帮忙了!
...全文
137 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Liroyal 2004-12-16
  • 打赏
  • 举报
回复
收藏
luozhengeast 2004-12-16
  • 打赏
  • 举报
回复
很久没有上csdn了,今天看到大家的回复,很感谢,我用别的方法解决了该问题,下面写出来给大家:
Private Sub Timer1_Timer()


Winsock1.RemoteHost = "" + SettingWND.Text1.Text + ""
Winsock1.RemotePort = 1433
Winsock1.connect

End Sub

Private Sub Winsock1_Connect()
If Winsock1.State = 7 Then
Winsock1.Close
End If

If m_linkflag = True Then
m_linkflag = False
MsgBox "已连接成功!"
End If
End Sub
Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)



If Winsock1.State = 9 Then
Winsock1.Close
End If
Timer3.Enabled = False
MsgBox "与数据库的连接已断开!"

End Sub
zjcxc 2004-08-18
  • 打赏
  • 举报
回复
定时调用上面的过程,就能得到状态了(SQL的服务管理器是这样工作的,不知道有没有更好的办法)
zjcxc 2004-08-18
  • 打赏
  • 举报
回复

'*************************************************************************
'**函 数 名:f_Get_ServerStatus
'**功能描述:得到SQL服务器的状态
'**输 入: sServerName 要查看状态的SQL服务器名
'** : sUser 登陆的用户
'** : sPassword 登陆密码
'**输 出:无
'**调用模块:'引用: Microsoft SQLDMO Object Library
'**作 者: 邹建
'**日 期: 2003年11月12日
Function f_Get_ServerStatus(Optional ByVal sServerName$ = "", Optional ByVal sUser$ = "", Optional ByVal sPassword$ = "")
Dim iSQLServer As SQLDMO.SQLServer
Dim iRe$

On Error GoTo lb_Err
Set iSQLServer = New SQLDMO.SQLServer
With iSQLServer
.LoginTimeout = 1
If sUser = "" Then
.LoginSecure = True
.Connect sServerName
Else
.Connect sServerName, sUser, sPassword
End If
Select Case .Status
Case SQLDMOSvc_Continuing
iRe = "正在连接"
Case SQLDMOSvc_Paused
iRe = "暂停"
Case SQLDMOSvc_Pausing
iRe = "正在暂停"
Case SQLDMOSvc_Running
iRe = "运行"
Case SQLDMOSvc_Starting
iRe = "正在启动"
Case SQLDMOSvc_Stopped
iRe = "停止"
Case SQLDMOSvc_Stopping
iRe = "正在停止"
Case SQLDMOSvc_Unknown
iRe = "未知"
End Select
.Disconnect
End With

GoTo lb_Exit

lb_Err:
MsgBox "错误:" & Error, 48
iRe = "错误"
lb_Exit:
If Not (iSQLServer Is Nothing) Then Set iSQLServer = Nothing
f_Get_ServerStatus = iRe
End Function
venket 2004-08-18
  • 打赏
  • 举报
回复
你可以采用警报啊
你可以设置当数据库一关时
就通知你想要的信息啊
platinum15 2004-08-16
  • 打赏
  • 举报
回复
送的来说就是应该程序和数据库要有握手!
platinum15 2004-08-16
  • 打赏
  • 举报
回复
我也是同样的问题
了缘 2004-08-16
  • 打赏
  • 举报
回复
up
luozhengeast 2004-07-29
  • 打赏
  • 举报
回复
能具体说说吗?
明后天会更好 2004-07-29
  • 打赏
  • 举报
回复
我没有好办法,但我说一个,你可以考虑考虑

我是每隔一段时间,去扫描数据库没有信息反过来说关闭

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧