数据库还原 
'引用sqldmo object library Dim gSQLServer As SQLDMO.SQLServer On Error GoTo ErrHandler:     If gSQLServer Is Nothing Then         Set gSQLServer = New SQLDMO.SQLServer     End If     gSQLServer.LoginTimeout = 15     frmSelectServer.Show 1     If frmSelectServer.connecString = "" Then Exit Sub     gSQLServer.Connect frmSelectServer.connecString, "sa", "sa"     Dim oRestore As SQLDMO.Restore     Dim Msg As String     Dim Response As String     Set oRestore = New SQLDMO.Restore     oRestore.DATABASE = "data"      CommonDialog1.CancelError = True    On Error GoTo Errhandler1    ' 设置标志    CommonDialog1.Flags = cdlOFNHideReadOnly    ' 设置过滤器    CommonDialog1.Filter = "All Files (data*.*)|data*.*"    ' 指定缺省的过滤器    CommonDialog1.FilterIndex = 2    ' 显示“打开”对话框    '    Dim riqi As String    CommonDialog1.FileName = riqi    CommonDialog1.ShowOpen    ' 显示选定文件的名字    riqi = CommonDialog1.FileName          oRestore.Files = riqi   '当连接的时候,鼠标变化     Screen.MousePointer = vbHourglass     '恢复前断开所有的数据库连接     Dim iDb As ADODB.Connection, iRe As ADODB.Recordset     Set iDb = New ADODB.Connection     Set iRe = New ADODB.Recordset     Dim iConcStr As String      '连接数据库服务器     iConcStr = "Provider=sqloledb;" & _             "Data Source=myServerName;" & _            "Initial Catalog=master;" & _            "User Id=myUsername;" & _            "Password=myPassword"     iDb.Open iConcStr     Dim iSql As String     iSql = "select spid from master..sysprocesses where dbid=db_id('data')"     iRe.Open iSql, iDb, adOpenKeyset, adLockReadOnly     frmMoive.Label1.Caption = "数据库在还原过程中,请等候。"     frmMoive.Caption = "数据库恢复"     frmMoive.Show vbModeless, Me     DoEvents     Me.Enabled = False        Dim Spath As String     If Right(App.Path, 1) <> "\" Then         Spath = App.Path & "\"     Else         Spath = App.Path     End If     frmMoive.Animation1.Open Spath & "working.avi"     frmMoive.Animation1.Play     While iRe.EOF = False         iSql = "kill " & iRe(0)         iDb.Execute iSql         iRe.MoveNext     Wend     iRe.Close     iDb.Close     '恢复数据库     oRestore.SQLRestore gSQLServer     '恢复后鼠标返回默认的状态     Me.Enabled = True     frmMoive.Animation1.Stop     Unload frmMoive     Set oRestore = Nothing     Screen.MousePointer = vbDefault     MsgBox "数据库还原成功!"          Exit Sub 
ErrHandler:     MsgBox "Error " & Err.Description     Exit Sub Errhandler1:        ' 用户按了“取消”按钮    Exit Sub  
 
  |