Spring
[Spring] sql delete한 데이터 불러오기
아잠만_
2024. 8. 7. 10:22
delete한 데이터를 commit을 한 경우
수정할 때 별로 오래되지 않은 경우에는 다시 불러올 수 있음
해당 방법은 과거의 테이블을 불러오면서 그걸 다시 insert시키는 방법이다
insert into 테이블명
select * from 테이블명
as of timestamp (systimestamp - interval 'x' minute);
-- x 분 이전에 존재했던 테이블을 불러온다
예시
-- 테이블 생성
create table member_bak
as
select * from member;
-- 테이블 조회
select * from member_bak
-- rollback 가능, 스키마 구조가 살아있음
delete from member_bak;
commit;
-- 3분전 테이블 데이터 조회 (flashback)
-- 해당 결과는 delete를 수행했을 때만 가능
insert into member_bak
select * from member_bak
as of timestamp (systimestamp - interval '3' minute) ;
-- truncate : rollback불가능, 스키마 구조가 살아있음
truncate table member_bak;
-- drop : rollback불가능, 스키마 구조 사라짐
drop table member_bak;
commit;