I have a restore procedure like this:
Dim lcRestoringDatabase As String = ""
Dim loRestore As Microsoft.SqlServer.Management.Smo.Restore = New Microsoft.SqlServer.Management.Smo.Restore
Dim loServer As Microsoft.SqlServer.Management.Smo.Server = New Microsoft.SqlServer.Management.Smo.Server
loRestore.Devices.AddDevice(cPath + "\" + cDatabase + ".bak", Microsoft.SqlServer.Management.Smo.DeviceType.File)
loRestore.Database = cDatabase
loRestore.Action = Microsoft.SqlServer.Management.Smo.RestoreActionType.Database
loRestore.ReplaceDatabase = True
loRestore.PercentCompleteNotification = 1
AddHandler loRestore.PercentComplete, AddressOf ProgressEventHandler2
loRestore.SqlRestore(loServer)
I need to add support in there for something that would be able to support this extra move files such as this:
RESTORE DATABASE [MyDatabase] FROM DISK = N'D:\SQLData\MyDatabase.bak'
WITH Move 'MyDatabase' TO 'D:\SQLData\MyDirectory\MyDatabase.mdf',
MOVE 'MyDatabase_log' TO 'D:\SQLData\MyDirectory\MyDatabase.ldf',
MOVE 'Hit' TO 'D:\SQLData\MyDirectory\Hit.ndf',
MOVE 'CateFilt' TO 'D:\SQLData\MyDirectory\CateFilt.ndf',
FILE = 1, NOUNLOAD, REPLACE, STATS = 10
GO
Is that possible?