数据库连接状态监测

platinum15 2004-08-16 10:32:37
我做了一个局域网应用程序,在各个客户端访问服务器上的数据库(SQL SERVER), 现在我想做到当服务器上的数据库关闭时,客户端机器能及时监测到,这样我就可以给用户一个明确的通知。
请大家帮忙了
...全文
204 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
netcoder 2004-08-17
  • 打赏
  • 举报
回复
好久不见大力了
不过大力好象是答非所问:)
zjcxc 2004-08-17
  • 打赏
  • 举报
回复

'*************************************************************************
'**函 数 名: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
qiliu 2004-08-16
  • 打赏
  • 举报
回复
telnet computername 1433
看是否能够连上
pengdali 2004-08-16
  • 打赏
  • 举报
回复
select current_user
select user_name()

select suser_sname()


SP_LOCK --检测SQL SERVER当前资源LOCK的状态。
SP_MONITOR --显示当前的SESSION的状态。
SP_WHO2 --显示当前SQL SERVER和client的连接状态和CPU,I/O的状态。

. 列出特定用户的进程
此示例显示如何通过登录名查看有关单个当前用户的信息。

USE master
EXEC sp_who 'janetl'

C. 显示所有活动进程
USE master
EXEC sp_who 'active'

D. 通过进程 ID 显示特定进程
USE master
EXEC sp_who '10' --specifies the process_id
zjcxc 2004-08-16
  • 打赏
  • 举报
回复
同意楼上,楼主在客户端检测SQL状态吧

一般你使用短连接,即每次使用时才去连接,这样就不需要监测状态了.
老宛 2004-08-16
  • 打赏
  • 举报
回复
这个最好在客户端应用程序里面检测,然后通知,服务器端不好实现,如果服务器意外断开,通知是无法发出的
wxq1142 2004-08-16
  • 打赏
  • 举报
回复
gz
platinum15 2004-08-16
  • 打赏
  • 举报
回复
说得简单点就是,从外部能不能获得数据库的状态!
platinum15 2004-08-16
  • 打赏
  • 举报
回复
现在是这样的,应用程序和数据库在同一台机器上,如果数据库停了,应用程序能够监测得到!

27,579

社区成员

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

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