現在、あるテーブルに文字列値がありますが、別のテーブルを参照するように変更したいと考えています。たとえば、現在私は持っています:
| Table: Animal |
-----------------------
| Name | Class |
|-----------|---------|
| Horse | Mammal |
| Crocodile | Reptile |
そして、これらが新しい「AnimalClass」テーブルを参照するようにして、次のようにします。
| Table: Animal |
-----------------------
| Name | ClassId |
|-----------|---------|
| Horse | 3 |
| Crocodile | 14 |
新しいテーブルを作成し、ClassId を問題なく設定しました。
残念ながら、新しい Id と AnimalClass テーブルの間に外部キー制約を追加しようとすると、次のエラーが発生します。
SQL Error: ORA-55610: Invalid DDL statement on history-tracked table
「元に戻す」が無効になるため、これは理にかなっています。
制約を追加できるように、履歴データを新しいデータに合わせて移行する方法はありますか?