Выборочное восстановление базы данных - PullRequest
1 голос
/ 20 января 2010

Я использовал этот запрос:

BACKUP DATABASE RentalEase
TO DISK = 'C:\RentalEaseBackup\RentalEase.bak'
WITH COPY_ONLY;
GO

Для резервного копирования моей базы данных. Кто-то что-то удалил, поэтому теперь мне нужно восстановить его с предыдущего момента, однако я не хочу перезаписывать новые изменения (кроме удалений).

Я подумал, что могу сделать это, прикрепив резервную копию к SQL Server в качестве новой базы данных, а затем выполнить необходимые запросы, чтобы переместить несколько удаленных строк. Однако он не будет прикреплять файл RentalEase.bak, потому что он говорит, что это не основной файл базы данных.

Как я могу прикрепить резервную копию базы данных, чтобы я мог выполнять SQL-запросы к ней?

Ответы [ 3 ]

2 голосов
/ 20 января 2010

Восстановите базу данных с другим именем базы данных, и затем вы можете делать что угодно между двумя базами данных (удачи!)

2 голосов
/ 20 января 2010

Вам нужно ВОССТАНОВИТЬ БД, вы не можете прикрепить файл резервной копии

RESTORE DATABASE TestDB
    FROM DISK = 'c:\Northwind.bak'
    WITH MOVE 'Northwind' TO 'c:\test\testdb.mdf',
    MOVE 'Northwind_log' TO 'c:\test\testdb.ldf'

Полный синтаксис здесь

0 голосов
/ 20 января 2010

создайте новую базу данных с именем RentalEase2, восстановление будет выглядеть так

RESTORE DATABASE [RentalEase2] FROM  DISK = N'C:\RentalEaseBackup\RentalEase.bak'
WITH  FILE = 1, NOUNLOAD,  STATS = 10
GO
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...