• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

数据库还原

发布: 2007-7-01 21:48 | 作者: admin | 来源: | 查看: 13次 | 进入软件测试论坛讨论

领测软件测试网

数据库还原

´引用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


文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网