PB判断SQLSERVER2000的状态

发表于:2007-05-25来源:作者:点击数: 标签:
//判断SQL Server是否已经启动,如果没有启动则做相应处理 st_status.text='判断SQL Server是否已经启动 ...' OLEObject PBObject long ll_status PBObject = CREATE OLEObject ll_status = PBObject.ConnectToNewObject ("SQLDMO. sql server") string ls_s

//判断SQL Server是否已经启动,如果没有启动则做相应处理
st_status.text='判断SQL Server是否已经启动 ...'
OLEObject PBObject
long ll_status

PBObject = CREATE OLEObject
ll_status = PBObject.ConnectToNewObject ("SQLDMO.sqlserver")

string ls_serverName
integer li_Return
string ls_UserName
String ls_Password

Constant Integer SQLDMOSvc_Unknown  =0//未知状态
Constant Integer SQLDMOSvc_Running   =1//已经启动
Constant Integer SQLDMOSvc_Paused  =2//SQL Server为暂停状态
Constant Integer SQLDMOSvc_Stopped   =3//SQL Server为停止状态
Constant Integer SQLDMOSvc_Starting  =4//SQLSERVER正在启动(关闭-->启动)
Constant Integer SQLDMOSvc_Stopping  =5//SQLSERVER正在关闭
Constant integer SQLDMOSvc_Continuing=6//SQLSERVER正在启动(暂停-->启动)
Constant Integer SQLDMOSvc_Pausing   =7//SQLSERVER正在暂停(启动-->暂停)

 

ls_ServerName='218.71.42.229'
ls_UserName='sa'
ls_password='


IF ll_status = 0 THEN      //连接成功
  PBObject.name = ls_servername
  PBObject.logintimeout=10
  PBObject.LoginSecure = True   //以NT方式连接
  //PBObject.LoginSecure = false   //以SQL Server方式连接
  IF isNull(PBObject) Then Return
  Try
   li_return = PBObject.Status
    Catch(RunTimeError rte)
   Messagebox("提示","没有安装SQLServer",StopSign!)
    End try
  Choose case li_return
  case 1   //已经启动
   st_Status.text=ls_ServerName+'已经启动SQLSERVER服务器'
   //PBObject.stop()//停止SQLSERVER
  case 2   //SQL Server为暂停状态
   st_status.text = '启动' + ls_servername + '上的SQL Server ...(暂停-->启动)'
     PBObject.Continue()
  case 3  //SQL Server为停止状态
   st_status.text = '启动'+ ls_servername + '上的SQL Server ...(停止-->启动)'
     PBObject.Start(false,ls_servername,ls_username,ls_password)//启动SQL Server
  case 4  //SQLSERVER正在启动(关闭-->启动)
   st_status.text = ls_servername + '上的SQL Server 正在启动(关闭-->启动)'
   PBObject.start(false,'sa',')//停止SQLSERVER
  case 5  //SQLSERVER正在关闭
   st_status.text = ls_servername + '上的SQL Server 正在关闭'
  case 6  //SQLSERVER正在启动(暂停-->启动)
   st_status.text = ls_servername + '上的SQL Server 正在启动(暂停-->启动)'
  case 7 //SQLSERVER正在暂停(启动-->暂停)
   st_status.text = ls_servername + '上的SQL Server 正在暂停'
  case 0 //未知状态
   st_status.text = '未知'+ls_servername + '上的SQL Server 状态'
 End Choose
ELSE
  messagebox("系统提示","数据库连接失败!~n请检查输入的用户名和口令是否正确")
  return
end if
Destroy(PBObject)


原文转自:http://www.ltesting.net