본문 바로가기

DB,데이터베이스

[영남이공대학교 사이버보안과] Savepoint / Truncate 작업

Savepoint : 변경된 지점의 위치 저장

Rollback to 이름 : 세이브포인트 한 지점까지 재복구


http://pastebin.com/0Qax8drA#

  1. -- 1. UPDATE TABLE "world" ( world 테이블 수정 )
  2.  
  3. UPDATE world set code = 1 WHERE lang = 'kor';
  4.  
  5. -- 2. SET SAVEPOINT ( 세이브포인트 kr )
  6.  
  7. SAVEPOINT kr;
  8.  
  9. -- 3. DELETE FROM world ( world 테이블의 kor 언어 삭제 )
  10.  
  11. DELETE FROM world WHERE lang = 'kor';
  12.  
  13. -- 4. Rollback to kr ( kr 세이브포인트로 이동 )
  14.  
  15. ROLLBACK TO kr;
  16.  
  17. -- BONUS 1. TRUNCATE : DELETE TABLE's ALL row. ( Truncate를 사용해 모든 행 삭제 )
  18.  
  19. truncate table world;
  20.  
  21. -- BONUS 2. ROLLBACK ( 롤백으로 복구 시도 )
  22.  
  23. rollback;
  24.  
  25. -- BONUS 3. LOOK TABLE "world" ( 파일을 열었지만 복구 실패..)
  26.  
  27. SELECT * FROM world;
  28.  
  29. -- Empty set.
  30. -- TRUNCATE can not recovery.
  31.  
  32. -- Yeungnam University College // Cyber Security [2014] //
  33. -- homepage: http://www.ync.ac.kr/
  34. -- blog: http://namedit.tistory.com/


* Truncate 를 사용하여 테이블의 내용을 지우면 Rollback으로 복구가 불가능합니다. *


[영남이공대학교 사이버보안과] Savepoint / Truncate 작업