Bạn có thể nên liên hệ với bộ phận Hỗ trợ của Oracle.
Bạn có bản sao lưu không? Nếu vậy, hãy khôi phục bảng từ bản sao lưu của bạn. Nếu không (và nếu liên hệ với Oracle không phải là một lựa chọn cho bạn) ...
Oracle có những tối ưu hóa đặc biệt cho DUAL, nhưng tôi không biết bản thân bảng này có điều gì đặc biệt hay không. Tôi sẽ coi nó như một chiếc bàn bình thường và xem điều gì sẽ xảy ra. Hãy thử điều này:
Kết nối dưới dạng SYSDBA và sau đó thực hiện các lệnh sau:
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;
Và không bao giờ BAO GIỜ thay đổi BẤT CỨ ĐIỀU GÌ trong lược đồ SYS nữa!
CHỈNH SỬA:Vừa nhận thấy một bản sao từ TODAY: https:// stackoverflow. com / question / 2816478 / recovery-dual-table-in-oracle - thêm đề xuất ở đây.