私は昨日からこの奇妙な問題を抱えています。私はいくつかのオプションを試しましたが、実際にORACLEとDB自体を再インストールしました。
ここに問題があります:私はゾンビのようなものであるこのテーブルを持っています。症状は次のとおりです。
SELECT TABLE_NAME FROM USER_TABLES WHERE TABLE_NAME='MYTABLE'
テーブルが存在することを意味するレコードを返します。
SELECT COLUMN_NAME FROM USER_TAB_COLUMNS WHERE TABLE_NAME = 'MYTABLE'
MYTABLEのすべての列を返します。これまでのところ、テーブルは存在します。
SELECT * FROM MYTABLE
戻り値ORA-00942:表またはビューが存在しません。この時点で私はかなり混乱しています。テーブルはUSERTABLESに存在しているように見えますが、それを選択することはできませんか?
CREATE TABLE MYTABLE (Foo NUMBER) TABLESPACE MYTABLESPACE
戻り値: ORA-00604:再帰SQLレベル1でエラーが発生しましたORA-00001:一意制約(SYS.I_OBJ2)に違反しました
私はこのエラーを理解していません。しかし、最高のものはまだ来ていません。
SELECT * FROM MYTABLE
驚いたことに、上記のクエリ(3番目のクエリの正確なコピー)は現在、いくつかのレコードを返します!さらに、列Fooが存在しないことに気付きました。現在表示されているテーブルは、他の列を含む最初のテーブルです。
DROP TABLE MYTABLE
テーブルを削除しようとすると、次のエラーが発生します。
ORA-00604:再帰SQLレベル1でエラーが発生しましたORA-00942:表またはビューが存在しませんORA-06512:19行目
SELECT * FROM MYTABLE
これまで以上に混乱して、私は上記のクエリを試しましたが、驚いたことに、テーブルはもう存在しません。
私はこれを理解していません:テーブルはUSERTABLESにありますが、それを選択することはできませんが、同じ名前で新しいテーブルを作成するとエラーが発生しますが、以前のバージョンのテーブルをいくつか使用して選択できるようになりました記録。
何かご意見は ?私は本当にあなたの助けが必要です:(
編集-私は今チェックしました:私はどのテーブルも落とすことができません。これは新しい症状かもしれません。
解決
問題は、MDSYS.SDO_GEOR_SYSDATA_TABLEテーブルが欠落していて、ドロップイベントトリガーがそれにアクセスしようとしてエラーを生成したことでした。解決策は、そのテーブルを復元することでした。