backupdb.ctl
来自「用SQLDMO做的SQL数据库备份、还原控件 包括数据库完全备份、增量备份、事」· CTL 代码 · 共 100 行
CTL
100 行
VERSION 5.00
Begin VB.UserControl DBackUp
ClientHeight = 1845
ClientLeft = 0
ClientTop = 0
ClientWidth = 1890
ScaleHeight = 1845
ScaleWidth = 1890
Begin VB.CommandButton Command2
Caption = "还原数据库"
Height = 495
Left = 360
TabIndex = 1
Top = 1080
Width = 1095
End
Begin VB.CommandButton Command1
Caption = "备份数据库"
Height = 495
Left = 360
TabIndex = 0
Top = 360
Width = 1095
End
End
Attribute VB_Name = "DBackUp"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
'事件声明:
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 + -
显示快捷键?