2010-05-12 2 views

답변

4

오라클 지원부에 문의하십시오.

백업이 있습니까? 그렇다면 백업에서 테이블을 복원하십시오. 그렇지 않은 경우 (오라클에 문의하는 것이 옵션이 아닐 경우) ...

오라클은 DUAL에 대해 특별한 최적화를 수행하지만, 테이블 자체에 특별한 것이 있는지 여부는 알 수 없습니다. 나는 그것을 정상적인 테이블처럼 취급 할 것이고 어떤 일이 일어날지를 볼 것입니다. SYSDBA로

연결 한 후 다음 명령을 실행 :이 시도

CREATE TABLE SYS.DUAL 
(
    DUMMY VARCHAR2(1 BYTE) 
); 

INSERT INTO SYS.DUAL VALUES ('X'); 

COMMIT; 

GRANT SELECT ON SYS.DUAL TO public WITH GRANT OPTION; 

CREATE PUBLIC SYNONYM DUAL FOR SYS.DUAL; 

을 그리고 다시 SYS 스키마에 아무 것도 변경하지 않을!

편집 : 오늘부터 중복 된 것으로 나타났습니다 : https://stackoverflow.com/questions/2816478/recovering-dual-table-in-oracle - 여기에 제안 사항이 추가되었습니다.

-1

이중 테이블은 시스템 테이블 공간의 더미 테이블입니다. 사용자로서, 그것을 놓을 권리가 없습니다. 스키마에 자신 만의 이중 테이블이 있으면 그 테이블을 놀 수 있습니다. u는 dml을 수행 할 수 있고, 놓을 수 있으며, 잘라내는 등 할 수 있습니다. u가 놓여 지더라도 이전과 같은 스크립트에서 다시 만들 수 있습니다.