문제

업데이트 명령을 사용하여 실수로 SQL Server 2000 데이터베이스에서 전체 테이블을 업데이트했습니다. 나는 실제로 하나의 행만 업데이트하는 것을 의미했습니다. 이제 모든 2000 행에는 업데이트가 포함되어 있습니다. 이 변경을 롤백하는 방법이 있습니까?

도움이 되었습니까?

해결책

명시 적 거래로 업데이트를 시작하지 않는 한, no.

그러나 사용할 수 있습니다 로그 구조 . 이 경우 이것이 당신을 도울 수 있는지 확실하지 않습니다.

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

다른 팁

아니요, 되돌릴 백업이 없다면 아닙니다.

나는 그 실수를 한 번했다. 이제 시작 Tran과 함께 모든 수동 작업을 시작합니다. 그런 다음 일어날 수있는 최악의 상황은 Tran을 커밋하고 테이블에 자물쇠를 유지하는 것을 잊어 버린 것입니다.

사용 가능한 감사 로그가있는 경우 이전 상태로 돌아가는 데 사용하십시오. 그렇지 않으면 해당 시점에서 최신 백업으로 되돌려 야합니다. 로그를 검사하고 Lumigent 's Log Explorer로부터 특정 데이터를 가져올 수있는 일부 제품이 있습니다 (http://www.ssw.com.au/ssw/logexplorer/)는 하나이지만, 그들은 값 비싼 편에있는 경향이 있으며, 당신이 이미 가지고 있지 않다면 즉시 당신을 도울 수 없습니다.

현재 백업 및/또는 감사 테이블이없는 경우 이력서를 업데이트합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top