命令介绍: Backup Database [数据库名] To Disk=[保存路径和名称] With [其他属性]
代码注释:ServerIP :SQLServer所在机器的 IP jtsg:SQLServer中数据的名称
Public Cn As ADODB.Connection Set Cn =New ADODB.Connection strcon ="Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=jtsg;Data Source="+ ServerIp +";"+ _ "use procedure for prepare=1;auto translate=true;"+ _ "use encryption for data=false;tag with column collation when possible=false" Cn.ConnectionString = strcon OnErrorResumeNext Cn.Open If Cn.Errors.Count >0Then For i =0To Cn.Errors.Count -1 If Cn.Errors(i).Number =-2147467259Then MsgBox"网络不通或服务器未开,请确认后再试", vbOKOnly + vbInformation, "提醒" Unload Me ExitSub ExitFor EndIf Next i EndIf
二、完全备份
PrivateSub BackupAll() Cn.Execute "backup database jtsg to disk='"+ App.Path +"/backup/myjtsgall.bak' with name='jtsg backup all',description='Full Backup Of jtsg'" MsgBox"数据完全备份已经完成", vbOKOnly + vbInformation, "提醒" End Sub
三、差异备份
PrivateSub BackupDif() Cn.Execute "backup database jtsg to disk='"+ App.Path +"/backup/myjtsgdif.bak' with differential ,noinit,name='jtsg backup dif',description='Differential Backup Of jtsg'" MsgBox"数据差异备份已经完成", vbOKOnly + vbInformation, "提醒" End Sub
四、数据恢复
数据恢复,问题很多,要区分用户的备份形式。一般备份的默认形式是 Append to media,即添加到备份设备已有内容后面。前面介绍的备份方式就这种。还有一种备份形式是 OverWrite,即覆盖设备原有内容。这两中备份形式决定恢复的方式也不一样。
命令介绍: Restore Database [数据库名] From [保存备份的路径和名称] With[其他属性]
PrivateSub RestoreData() Cn.Execute "restore database jtsg from disk='"+ App.Path +"/backup/myjtsgall.bak' with FILE=1" MsgBox"数据恢复已经完成", vbOKOnly + vbInformation, "提醒" End Sub