パーティション作成エラー - ヒント:現在列に NULL が含まれていない場合は、AHM を進めます。
-
21-12-2019 - |
質問
既存のテーブルを年ごとにパーティション化しようとしています(既存のパーティションはありません)。
alter table test_table PARTITION BY EXTRACT (year FROM date_c);
しかし、何かエラーがあるようです
ロールバック 2628:式による分割の列「date_c」は、null値が含まれているため、許可されていません**ヒント:現在列に NULL が含まれていない場合は、パーティショニングを変更する前に、AHM を進めて削除ベクトルから NULL をパージします**
この列には null 値がないため、ヒントに従いました。私はAHMを現在まで進めました。しかし、削除ベクトルからヌルを削除するにはどうすればよいでしょうか?
解決
AHM (古代史マーカー) を最大許容値に設定した後、次を使用できます。 PURGE_TABLE()
物理ストレージから削除データを完全に削除します。
の MAKE_AHM_NOW()
関数はエポックを進め、すべての投影に対してムーブアウト操作を実行します。次に、AHM は LGE (Last Good Epoch) に設定されます。この時点で、履歴データ (デリート ベクターを含む) はすべて失われ、ロールバックはできなくなります。します ない 古いデータを自動的に消去します。
他のヒント
は、AHMを今すぐ()に設定した後にデータを削除しなければならないように見えます(AHMを今すぐに設定されていると仮定します()古いデータを削除するのを想定しています)。
所属していません StackOverflow