0

800,000行をロードする必要がある一意のインデックスを持つテーブルがあります。

インデックスを変更して使用できなくしました。'options(rows = 4000、bindsize = 512000、skip_unusable_indexes = TRUE)'を制御ファイルに追加しました。

まだフォームのエラーが発生しています:

ORA-01502: index 'x_Unique' or partition of such index is in unusable state

提案を歓迎します

4

2 に答える 2

0

一意のインデックスでは実行できません。SKIP_UNUSABLE_INDEXESを参照してください:

ただし、一意でIUとマークされているインデックスは、インデックスのメンテナンスをスキップできません。このルールはDML操作によって適用され、DMLとの整合性を保つためにダイレクトパスロードによって適用されます。

おそらく、インデックスを削除して、後で再作成する必要があります。

于 2009-12-02T15:48:47.773 に答える
0

一意のインデックスを一意でないインデックスに置き換えてから、同じ列に一意の制約を設定できると思います。次に、制約を無効にして、ロード前にインデックスを使用できなくし、その後、インデックスを再構築して、制約を再度有効にすることができます。

于 2009-12-02T16:35:20.733 に答える