おそらくOracleサポートに連絡する必要があります。
バックアップはありますか?その場合は、バックアップからテーブルを復元します。それ以外の場合(およびOracleに連絡することができない場合)...
Oracleには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 / restoreing-dual-table-in-oracle -ここに提案を追加しました。