<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之男人的天堂| 高清免费久久午夜精品| 亚洲精品第一国产综合境外资源| h片在线观看免费| 国产V亚洲V天堂无码久久久| 热re99久久6国产精品免费| 亚洲福利视频网址| 国内自产少妇自拍区免费| 国产亚洲精品美女久久久久 | 亚洲AV日韩AV天堂一区二区三区 | 久久久久久成人毛片免费看| 亚洲精品人成电影网| 国外成人免费高清激情视频| 一级做a爰片性色毛片免费网站 | 亚洲妇女水蜜桃av网网站| 成人性生免费视频| 色老头综合免费视频| 亚洲精品人成在线观看| 无码视频免费一区二三区| 一级A毛片免费观看久久精品| 国产亚洲精品自在久久| 日本免费网址大全在线观看| 日本亚洲高清乱码中文在线观看| 亚洲一区二区三区乱码A| 免费女人高潮流视频在线观看| 亚洲人成日本在线观看| 亚洲精品国产精品国自产观看| 久久久免费的精品| 亚洲欧美日韩中文无线码| 国产亚洲婷婷香蕉久久精品| 手机看黄av免费网址| aaa毛片视频免费观看|