新建 文本文档.txt
来自「用SQLDMO做的SQL数据库备份、还原控件 包括数据库完全备份、增量备份、事」· 文本 代码 · 共 70 行
TXT
70 行
'事件声明:
Public Event MYLog(LogStr As String) 'MappingInfo=Command1,Command1,-1,Click
Public Function BackUpDBToFile(ServerName As String, DBName As String, User As String, PWD As String, BKPath As String, BKType As Integer)
'开始备份
Dim Svr As New SQLDMO.SQLServer
Dim DB As SQLDMO.Database
Dim BK As New SQLDMO.Backup
Dim DV As New SQLDMO.BackupDevice
'判断参数
If ServerName = "" Or DBName = "" Or User = "" Or BKPath = "" Then
MsgBox "服务器名称,数据库名称,用户名,备份路径不能为空!"
Exit Function
End If
Svr.Connect ServerName, User, PWD
DV.Type = SQLDMODevice_DiskDump
DV.Name = DBName
DV.PhysicalLocation = BKPath
On Error Resume Next
Svr.BackupDevices.Add DV
On Error GoTo 0
BK.Database = DBName
BK.Devices = DBName
BK.Action = BKType
BK.Initialize = True
BK.SQLBackup Svr
Svr.BackupDevices.Remove DBName
Dim LogStr As String
LogStr = Now() & "数据库备份成功!"
RaiseEvent MYLog(LogStr)
End Function
Public Function RestoreDBFromFile(ServerName As String, DBName As String, User As String, PWD As String, REPath As String, REType As Integer)
'开始备份
Dim Svr As New SQLDMO.SQLServer
Dim RE As New SQLDMO.Restore
'判断参数
If ServerName = "" Or DBName = "" Or User = "" Or REPath = "" Then
MsgBox "服务器名称,数据库名称,用户名,备份路径不能为空!"
Exit Function
End If
Svr.Connect ServerName, User, PWD
RE.Action = REType
RE.Database = DBName
RE.Files = REPath
RE.FileNumber = 1
RE.ReplaceDatabase = True
RE.SQLRestore Svr
Svr.Close
Dim LogStr As String
LogStr = Now() & "数据库还原成功!"
RaiseEvent MYLog(LogStr)
End Function
Private Sub Command1_Click()
BackUpDBToFile "192.168.1.251", "test", "sa", "123", "c:\test12345.bak", 0
End Sub
Private Sub Command2_Click()
RestoreDBFromFile "192.168.1.251", "test", "sa", "123", "C:\test12345.bak", 0
End Sub
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?