간혹, DB가 손상되는 경우가 있다.
하지만 이런 경우에도 DB 백업시 Checksum 옵션을 사용하지 않으면 정상 백업이 가능하다.
심지어 CheckSum 옵션을 사용했는데도 불구하고 정상 백업되는 경우가 있다.
이런 일을 방지하고자 한다면,
우선 dbcc checkdb 로 오류 검사를 한후
오류가 없는경우 Database Backup 을 하면 된다.
SET @sql = 'DBCC CHECKDB (' + QuoteName(@name) + ') WITH ... options ...' EXEC sp_executesql @sql IF @@ERROR <> 0 BEGIN .. Error Handler ... END ... Continue with backup ...
dbcc checkdb로 해당 DB를 체크한 후, 오류 발생시 @@ERROR가 0이 아니므로 가능한 코드겠다
* 참고
@@ERROR : https://technet.microsoft.com/ko-kr/library/ms190193(v=sql.105).aspx
* 원문
http://forums.sqlteam.com/t/only-create-backup-if-dbcc-checkdb-is-ok/9459/2