2016-05-18 28 views
1

私は、バックアップを作成するときに説明をします。バックアップの説明でSQL Serverデータベースを復元する方法は?

私は私のバックアップに関する情報を取得できます。

SELECT name, database_name, description, backup_start_date FROM msdb.dbo.backupset 

私は、説明および/またはバックアップ作成日を使用して、スクリプトでデータベースを復元することはできますか?私はあなたが、構文を見ることができるとは思わない

RESTORE DATABASE [MyDB] FROM DISK = N'D:\dbbackups\ByDB.bak' 
Where Description = 'SomeDescr' and Date = '10.05.2016' 
+0

は、私のようなものが必要https://msdn.microsoft.com/en-us /library/ms186858.aspx –

答えて

0

私が見つけた一つの方法

declare @Position int = 0; 

SELECT @Position = position 
FROM msdb.dbo.backupset 
where database_name = 'MyDB' 
and type = 'I' and Description = 'some description' 

print @Position 

ALTER DATABASE [myDB] SET SINGLE_USER WITH ROLLBACK IMMEDIATE 


RESTORE DATABASE [myDB] FROM DISK = N'D:\dbbackups\myDB.bak' WITH FILE = 1, NORECOVERY, NOUNLOAD, REPLACE, STATS = 5 
RESTORE DATABASE [myDB] FROM DISK = N'D:\dbbackups\myDB.bak' WITH FILE = @Position, NOUNLOAD, STATS = 5 
関連する問題