<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-17  評論-64  文章-79  trackbacks-1
    *********************************************************
    '* 名稱:BackupDatabase
    '* 功能:備份數(shù)據(jù)庫
    '* 控件:一個文本框和兩個按鈕(備份到和確定)
    '*********************************************************
    Public Sub BackupDatabase()
    Dim cn As New ADODB.Connection
    Dim s_path, s_dataexport As String
    s_path = App.Path
    Me.MousePointer = 11? ?'設(shè)置鼠標(biāo)指針形狀
    'student1是需要備份的數(shù)據(jù)庫名稱
    s_dataexport = "backup database student1 to disk='" + CommonDialog1.FileName + "'"
    cn.Open "driver={sql server};server=" & d1 & ";database=student1;persist security info=false; userid=sa"??'數(shù)據(jù)庫連接字符串
    '這里不需要連接master數(shù)據(jù)庫,即可完成備份
    cn.BeginTrans
    cn.Execute s_dataexport
    Err.Number = 0
    If Err.Number = 0 Then
    ? ? cn.CommitTrans
    ? ? MsgBox "數(shù)據(jù)備份成功!", vbInformation, "提示"
    ? ? MsgBox "數(shù)據(jù)備份文件存放路徑:" & CommonDialog1.FileName, vbOKOnly, "提示"
    ? ? Unload Me
    Else
    ? ? cn.RollbackTrans
    ? ? MsgBox "數(shù)據(jù)備份失敗!請檢查數(shù)據(jù)庫是否正在打開!", vbCritical, "提示"
    End If
    cn.Close
    Set cn = Nothing
    Me.MousePointer = 1
    End Sub



    '*********************************************************
    '* 名稱:RestoreDataBase
    '* 功能:還原數(shù)據(jù)庫
    '* 控件:一個文本框和兩個按鈕( 打開和確定)
    '*********************************************************
    Public Sub RestoreDataBase()
    If Text1.Text = "" Then
    ? ? MsgBox "請選擇要恢復(fù)的數(shù)據(jù)文件!", vbInformation, "提示"
    ? ? Exit Sub
    Else
    ? ? ret = MsgBox("數(shù)據(jù)恢復(fù)操作將會覆蓋以前的所有數(shù)據(jù)并且覆蓋后無法恢復(fù),您確定要進(jìn)行恢復(fù)操作嗎?", vbQuestion + vbOKCancel, "提示")
    ? ? If ret = vbOK Then
    ? ?? ? Dim cn As New ADODB.Connection
    ? ?? ? Dim sn As New ADODB.Recordset
    ? ?? ? Dim s_restore As String
    ? ?? ? Me.MousePointer = 11
    ? ?? ? cn.Open "Provider=SQLOLEDB.1;Persist Security Info=False;server=" & d1 & ";Initial Catalog=master;Data Source=127.0.0.1;user id=sa;password=" & d3 & ""
    ? ?? ? sn.Open "select??spid??from??sysprocesses??where??dbid=db_id('student1')", cn
    ? ?? ???Do While Not sn.EOF
    ? ?? ?? ? cn.Execute "kill " & sn("spid")
    ? ?? ?? ? sn.MoveNext
    ? ?? ???Loop
    ? ?? ???sn.Close
    ? ?? ???s_restore = "restore database student1 from disk='" + Trim(Text1.Text) + "'??with REPLACE"
    ? ?? ???cn.Execute s_restore
    ? ?? ?? ?'Debug.Print gs_conn_string
    ? ?? ?? ?'此時需要連接master數(shù)據(jù)庫才能完成數(shù)據(jù)恢復(fù)操作
    ? ?? ?? ?'同上student1為需要恢復(fù)的數(shù)據(jù)庫
    ? ?? ???s_restore = "restore database student1 from disk='" + Trim(Text1.Text) + "'"
    ? ?? ?? ?'text1一個用于記錄需要恢復(fù)文件的地址的textbox
    ? ?? ???cn.Execute s_restore
    ? ?? ???cn.BeginTrans
    ? ?? ???If Err.Number = 0 Then
    ? ?? ?? ?? ?cn.CommitTrans
    ? ?? ?? ?? ?MsgBox "數(shù)據(jù)恢復(fù)成功!", vbInformation, "提示"
    ? ?? ?? ?? ?Command1.Enabled = True
    ? ?? ?? ?? ?Label1.Visible = False
    ? ?? ???Else
    ? ?? ?? ?? ?cn.RollbackTrans
    ? ?? ?? ?? ?MsgBox "數(shù)據(jù)恢復(fù)失敗!", vbCritical, "提示"
    ? ?? ?? ?? ?Command1.Enabled = True
    ? ?? ???End If
    ? ?? ???cn.Close
    ? ?? ???Set cn = Nothing
    ? ?? ???Me.MousePointer = 1
    ? ? Else
    ? ?? ???Exit Sub
    ? ? End If? ?? ?? ?? ?? ?? ?? ? '''''''''''''''''''''''''''''''''''''''''
    ? ? On Error Resume Next
    ? ? Dim DBC As New DataBaseConnection
    ? ? If db.State = 1 Then
    ? ?? ? db.Close
    ? ? End If
    ? ? db.ConnectionString = DBC.SqlConnectString(d1, d2, d3)
    ? ? rs.CursorType = adOpenDynamic
    ? ? rs.CursorLocation = adUseClient
    ? ? rs.LockType = adLockOptimistic
    ? ? db.CursorLocation = adUseClient
    ? ? db.Open
    ? ? Set cmd.ActiveConnection = db
    ? ? If Err.Number Then
    ? ?? ? MsgBox Err.Description, 16 + vbOKOnly, Err.Number
    ? ?? ? Exit Sub
    ? ? End If
    ? ? db.DefaultDatabase = "student1"
    ? ? If Err.Number Then
    ? ?? ? MsgBox Err.Description, 16 + vbOKOnly, Err.Number
    ? ?? ? Exit Sub
    ? ? End If
    End If
    End Sub? ?? ?? ?? ?? ?? ?? ? '''''''''''''''''''''''''''''''''''''''''''''
    posted on 2007-01-13 21:25 飛鳥 閱讀(1438) 評論(4)  編輯  收藏 所屬分類: VB

    評論:
    # re: VB實現(xiàn)SQL SERVER2000數(shù)據(jù)庫備份還原 2007-08-04 23:52 | li
    Dim DBC As New DataBaseConnection 是什么?d1、d2、d3是什么?  回復(fù)  更多評論
      
    # re: VB實現(xiàn)SQL SERVER2000數(shù)據(jù)庫備份還原 2007-08-06 12:56 | 飛鳥
    DataBaseConnection:數(shù)據(jù)庫連接對象
    d1:主機(jī)名(服務(wù)器名)
    d2:帳號
    d3:密碼

    總之這些都是要得到連接數(shù)據(jù)庫的字符串  回復(fù)  更多評論
      
    # re: VB實現(xiàn)SQL SERVER2000數(shù)據(jù)庫備份還原 2007-09-04 21:58 | 令狐沖(反正)我姓令
    哥們,真是太謝謝了,只是你那個恢復(fù)數(shù)據(jù)庫的Kill的存儲過程該怎樣寫?能發(fā)一下嗎????
      回復(fù)  更多評論
      
    # re: VB實現(xiàn)SQL SERVER2000數(shù)據(jù)庫備份還原 2007-09-05 13:01 | 飛鳥
    kill是系統(tǒng)自帶,所以不需要寫  回復(fù)  更多評論
      

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 一级毛片在线播放免费| 亚洲另类无码一区二区三区| 国产日韩在线视频免费播放| 五月婷婷亚洲综合| 啦啦啦中文在线观看电视剧免费版| 亚洲AV无码一区二区二三区软件| 精品乱子伦一区二区三区高清免费播放 | 亚洲日韩精品无码专区加勒比☆| 无人在线直播免费观看| 亚洲综合亚洲综合网成人| 黄色三级三级三级免费看| 亚洲美女高清一区二区三区 | 久久久久亚洲av无码尤物| 亚洲AV无码专区在线亚| 亚洲人成网站免费播放| 亚洲Av永久无码精品三区在线| 国精产品一区一区三区免费视频 | 亚洲国产另类久久久精品| 久久国产乱子精品免费女 | 国产成人AV片无码免费| 久久综合亚洲色HEZYO社区| 成人免费的性色视频| 亚洲爆乳少妇无码激情| 亚洲成年人啊啊aa在线观看| 亚洲狠狠成人综合网| 国产特级淫片免费看| 亚洲日本人成中文字幕| 免费国产黄网站在线观看视频| 亚洲无码高清在线观看| 免费人成网站在线观看不卡| 亚洲国产精品久久久久秋霞影院| 女性无套免费网站在线看| 一级做a毛片免费视频| 亚洲一区精品中文字幕| 久久久久久AV无码免费网站下载| 亚洲综合熟女久久久30p| 97免费人妻在线视频| 精品久久亚洲一级α| 免费在线一级毛片| 日韩成人毛片高清视频免费看| 亚洲成AV人片一区二区|