Oracleでデュアルテーブルを作成/再作成する方法はありますか? うっかり落としてしまいました。
2947 次
3 に答える
5
おそらく、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/recovering-dual-table-in-oracle - ここに提案を追加しました。
于 2010-05-12T18:28:33.683 に答える
-1
デュアルテーブルは、システムテーブルスペース内のダミーテーブルです。ユーザーとして、あなたはそれを落とす権利を持っていません。スキーマに独自のデュアルテーブルがある場合は、それを試すことができます。Uは、dmlを実行したり、ドロップしたり、切り捨てたりすることができます。ドロップした場合でも、以前と同じスクリプトから再作成できます。
于 2010-06-01T04:53:19.857 に答える