2016-10-11 2 views
0

보기가 데이터베이스에서 언제 삭제되었는지 확인할 수 있습니다.확인 방법 오라클보기의 삭제 날짜 시간

인덱스 및 테이블과 같은 다른 개체 유형의 경우 dba_recyclebin을 사용하여 droptime을 확인하지만 뷰에서는이 테이블에서 ORACLE이 세부 정보를 캡처하지 않는다고 생각합니다.

+0

질문이 명확하지 않습니다. 보기가 삭제되었는지 알고 싶습니까? 'select count (*) from [view_name]'을 입력하십시오 - 뷰가 존재하지 않으면 오라클이 알려줄 것입니다. 'user_views' 또는 ... – mathguy

+0

을 조회 할 수있는 다른 방법이 많이 있습니다. 뷰가 삭제 된 타임 스탬프를 확인하고 싶었습니다. DBA_RECYCLEBIN에 저장되지 않았으므로 다른 것이 있는지 궁금합니다. 그러한 기록이 저장된 표. 지금은 아카이브 된 로그를 검색하는 것 외에 다른 옵션이없는 것 같습니다. – Raje

+0

당신이 쓴 것을 다시 읽으십시오. (정확히 말하면, 당신이 말하고자하는 것이 아닙니다.) 정상적인 해석인지 확인하십시오. 견해가 떨어 졌는지 확립하는 데 어려움이 있다고 말했습니까? 당신은 그것이 떨어 뜨렸다는 것을 안다고 말하지 않았고 당신은 단지 언제 알고 있는지 알고 싶습니다. 명확히 해주셔서 감사합니다! – mathguy

답변

1

데이터가 여전히 UNDO 테이블 공간 (작업로드 및 구성에 따라 몇 시간에서 며칠까지)에 여전히 남아 있다고 가정하면 dba_views에 플래시백 쿼리를 사용할 수 있어야합니다 . FLASHBACK ANY TABLE 권한이 있어야합니다. 그 너머

SELECT text 
    FROM dba_views AS OF TIMESTAMP(systimestamp - interval '1' hour) 
WHERE owner = <<owner of view>> 
    AND view_name = <<name of view>> 

, 당신은 긴 시간 FRAM 이상 drop view 문을 찾아 dbms_logmnr를 사용하여 아카이브 로그를 볼 수 있었다. 그러나 더 많은 노력이 필요할 것입니다.

+0

도움을 주셔서 감사합니다. dbms_logmnr이 트릭을 수행합니다. DBA_RECYCLEBIN에 해당하는 테이블이 있는지 궁금합니다. – Raje