2008-11-12 4 views
1

실수로 SQL Server 2000 데이터베이스의 전체 테이블을 업데이트하기 위해 업데이트 명령을 사용했습니다. 사실 한 행만 업데이트하려고했습니다. 이제 모든 2000 행에 업데이트가 포함됩니다. 이 변경 사항을 되돌릴 수있는 방법이 있습니까?Sql Server 2000에서 롤백 및 업데이트 명령

답변

2

명시적인 트랜잭션으로 업데이트를 시작한 경우가 아니면.

그러나 Log Rescue을 사용할 수 있습니다. 이 경우에 이것이 도움이 될지 모르겠지만 확실하지 않습니다.

더 나은 옵션은 백업을 새 데이터베이스로 복원하고 이전 테이블과 새 테이블을 병합하는 것입니다.

0

되돌리려는 백업이 없다면 아니요.

나는 그 실수를 한 번했습니다. 이제는 BEGIN TRAN으로 모든 수동 작업을 시작합니다. 그런 다음 일어날 수있는 최악의 경우는 COMMIT TRAN을 잊어 버리고 테이블 잠금을 유지하는 것입니다.

0

감사 로그가 있으면 이전 상태로 되돌릴 수 있습니다. 그렇지 않으면 그 시점에서 최신 백업으로 되돌려 야합니다. Lumigent의 로그 익스플로러 (http://www.ssw.com.au/SSW/LogExplorer/)는 하나이지만, 값 비싼 편이며, 이미 가지고 있지 않다면 즉시 도움을받지 못합니다. .

현재 백업이없고 감사 테이블이없는 경우 이력서를 업데이트 할 것입니다.

+0

이미 업데이트 됨 ... –

+0

@Xardas : 루미 덴트 로그 탐색기에 심각한 서버를 죽이는 문제가 있었지만 대신 apex SQL 로그를 사용해보십시오. –

관련 문제