2012-01-18 10 views
1

私は、Oracle DBとの奇妙な問題が発生しています、と誰もが同様の問題を経験している場合にはお願いしたいと思います。私のテーブル(USER_TABLES)の全てにおいてOracle:すべてのテーブルのすべての行が複製されるのはなぜですか?

をEVERY SINGLE行が複製されています。

このようなことが起こった原因は何ですか?

すべてのテーブルを「手で」クリーニングせずに前の状態に戻すことはできますか?

+0

あなたは「通常の」DB環境を持っていたので、何が変わりましたか? (私は/これがテストenvであり、あなたがインポートまたはデータポンプで遊んでいたと思いますか?) "どのような種類のアクション"の質問(および "復元する方法"の質問は、バックアップ、rmanなどに依存する)を特定するための詳細情報が必要です。あなたはDBAですか? – tbone

+1

私の頭の上から外します - "INSERT INTO a_table SELECT * FROM a_table"は1つのテーブルに対して行います。すべてのテーブルを反復処理するための小さなPL/SQLで、重複したデータがあります。それがあなたのケースで起こったかどうかは言えません。 –

+0

DBAはどういうわけか "悩んだ"と私には思われますが、私はまだ彼に連絡することができませんでした。私はそれが起こった時点でDBを使用しなかった。もちろん、私のせいで、制約はありません。 – idefixs

答えて

2

このような状況(たとえば、impを2回実行する)につながる可能性がある多くのアクションを想像することはできますが、問題はありません。ユニーク/プライマリキーを使用して、そのような重複を単純に防止する必要があります。

以前の状態を復元するためとして、あなたはフラッシュバック問合せ機能について読むことをお勧めします: http://docs.oracle.com/cd/B13789_01/appdev.101/b10795/adfns_fl.htm

関連する問題