一备份有两中形式完全备份和差异备份
完全备份是对数据库进行完整备份周期比较长如周等
差异备份是对更新备份的数据进行备份周期比较短如小时
命令介绍 Backup Database [数据库名] To Disk=[保存路径和名称] With [其他属性]
代码注释ServerIP :SQLServer所在机器的 IP
jtsg:SQLServer中数据的名称
Public Cn As ADODBConnection
Set Cn = New ADODBConnection
strcon = Provider=SQLOLEDB;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=jtsg;Data Source= + ServerIp + ; + _
use procedure for prepare=;auto translate=true; + _
use encryption for data=false;tag with column collation when possible=false
CnConnectionString = strcon
On Error Resume Next
CnOpen
If CnErrorsCount > Then
For i = To CnErrorsCount
If CnErrors(i)Number = Then
MsgBox 网络不通或服务器未开请确认后再试 vbOKOnly + vbInformation 提醒
Unload Me
Exit Sub
Exit For
End If
Next i
End If
二完全备份
Private Sub BackupAll()
CnExecute backup database jtsg to disk= + AppPath + \backup\myjtsgallbak with name=jtsg backup alldescription=Full Backup Of jtsg
MsgBox 数据完全备份已经完成 vbOKOnly + vbInformation 提醒
End Sub
三差异备份
Private Sub BackupDif()
CnExecute backup database jtsg to disk= + AppPath + \backup\myjtsgdifbak with differential noinitname=jtsg backup difdescription=Differential Backup Of jtsg
MsgBox 数据差异备份已经完成 vbOKOnly + vbInformation 提醒
End Sub
四数据恢复
数据恢复问题很多要区分用户的备份形式一般备份的默认形式是 Append to media即添加到备份设备已有内容后面前面介绍的备份方式就这种还有一种备份形式是 OverWrite即覆盖设备原有内容这两中备份形式决定恢复的方式也不一样
命令介绍 Restore Database [数据库名] From [保存备份的路径和名称] With[其他属性]
在其他属性中重点介绍File NORECOVERY和 RECOVERY
FILE
这是不同备份形式的重要参数用来指定从设备上的第几个备份中恢复比如采用APPEND形式备份作了两次备份恢复第一个备份时应该在恢复命令中使用FILE=恢复第二个备份时则使用FILE=的选项
当然如果备份形式是OVERWRITE备份中就只有一次备份所以使用 FILE=的选项
RECOVERY
如果使用RECOVERY选项那么恢复完成后SQLSERVER回滚被恢复数据库中所有未完成的事务以保证数据库的一致性在恢复后用户就可以访问数据库所以RECOVERY用来恢复最后一个备份NORECOVERY则相反默认为RECOVERY
代码解释还原备份的文件可以选择完全备份和差异备份
Private Sub RestoreData()
CnExecute restore database jtsg from disk= + AppPath + \backup\myjtsgallbak with FILE=
MsgBox 数据恢复已经完成 vbOKOnly + vbInformation 提醒
End Sub