Anda mungkin harus menghubungi Dukungan Oracle.
Apakah Anda memiliki cadangan? Jika demikian, pulihkan tabel dari cadangan Anda. Jika tidak (dan jika menghubungi Oracle bukanlah pilihan bagi Anda)...
Oracle memiliki optimasi khusus untuk DUAL, tetapi saya tidak tahu apakah ada sesuatu yang istimewa tentang tabel itu sendiri. Saya hanya akan memperlakukannya seperti meja biasa dan melihat apa yang terjadi. Coba ini:
Hubungkan sebagai SYSDBA dan kemudian jalankan perintah ini:
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;
Dan jangan pernah mengubah APA PUN dalam skema SYS lagi!
EDIT:Baru saja melihat duplikat dari HARI INI:https://stackoverflow. com/questions/2816478/recovering-dual-table-in-Oracle - menambahkan saran di sini.