【发布时间】:2012-03-26 15:22:14
【问题描述】:
我正在使用下面的代码以编程方式使用 VB.Net 恢复 SQL 数据库
Dim srvConn2 As New ServerConnection(strDataSource)
srvConn2.LoginSecure = False
srvConn2.Login = strDBUserID
srvConn2.Password = strDBPassword
Dim srv3 As New Server(srvConn2)
Dim res As Restore = New Restore()
If OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
res.Devices.AddDevice(OpenFileDialog1.FileName, DeviceType.File)
res.Database = "MyDatabaseName"
res.ReplaceDatabase = True
res.SqlRestore(srv3)
MsgBox("Restore Complete", vbInformation)
End If
当备份文件位于运行数据库的同一台机器上时,这可以正常工作。当数据库在网络上的另一台机器上时,问题就开始了。有没有办法让 OpenFileDialog 显示远程机器的数据结构,以便可以从那里加载数据库备份文件?当您尝试手动恢复数据库时,SQL Management Studio 会显示远程文件结构。我想知道是否有类似于 SQL Management Studio 中出现的控件。
如果无法做到这一点,有没有办法让远程 SQL 服务器从本地机器上的文件中恢复数据库?我宁愿不使用共享网络驱动器或 UNC 路径,因为这应该尽可能简单,而且我不希望用户不得不玩共享和其他东西。
【问题讨论】:
标签: sql vb.net smo database-backups