транзакция отката sql 2005 - PullRequest
       6

транзакция отката sql 2005

1 голос
/ 27 сентября 2008

Я только что удалил из таблицы

Как мне откатить или восстановить строки ??

Ответы [ 7 ]

7 голосов
/ 27 сентября 2008

если вы звонили begin transaction до того, как сделали это, и еще не звонили commit, тогда вы можете позвонить rollback, иначе ... вам придется восстановить

3 голосов
/ 27 сентября 2008

Предполагая, что у вас есть недавняя полная резервная копия вашей базы данных, сделайте резервную копию вашего журнала транзакций сейчас и восстановите его до момента времени до вашего удаления. Если есть текущие данные, которые были изменены с тех пор, вы, вероятно, захотите восстановить их в другой БД и вручную вставить удаленные записи.

Из памяти, поэтому синтаксис может быть немного неправильным - но вы поняли:

BACKUP LOG DBName
   TO DISK='C:\DBName.TRN'
GO

RESTORE DATABASE DBName2
   FROM DISK='C:\DBName.BAK'
   WITH 
       MOVE 'DBName.MDF' TO 'C:\DBName2.MDF',
       MOVE 'DBName.LDF' TO 'C:\DBName2.LDF',
       NORECOVERY
GO

RESTORE LOG DBName2
   FROM DISK='C:\DBName.TRN'
   WITH
       RECOVERY,
       STOPAT = '09/26/2008 17:00'
GO
2 голосов
/ 27 сентября 2008

восстановление из резервной копии.

1 голос
/ 27 сентября 2008

Это поможет, если у вас есть деньги: http://www.lumigent.com/products/log_explorer.html

Кроме того, резервные копии, как и все остальные говорили

0 голосов
/ 27 сентября 2008

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

0 голосов
/ 27 сентября 2008
rollback;

Но только если вы были в транзакции ..

0 голосов
/ 27 сентября 2008

, если вы предшествовали удалению с помощью начального транса, вы просто используете откат тран

Если нет, начните искать свои резервные копии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...