2016-04-18 5 views
0

変更しようとしているデータを復元できるように、SQLデベロッパーでエクスポートするテーブルがあります。このため、私はOracle SQLDeveloperの機能を使用しています。ここでは、データからすぐに挿入スクリプトを作成できます。しかし、私はこのスクリプトを動作させるのに悩まされています。なぜなら、それは階層を表す自己参照型の外部キーを持つテーブル上で実行されるからです。Oracle SQLDevloper:自己参照外部キーを使用してテーブルをエクスポートする方法

ダミーの表は、この

primary_key_id  self_fk 
1     null 
2     1 
3     1 
4     2 
5     3 

のように見えることができるが、スクリプトの結果をエクスポートした後、私のために、このように見えん:

Insert into dummy_table(primary_key_id,self_fk) 
values(4,2); 
Insert into dummy_table(primary_key_id,self_fk) 
values(5,3); 
Insert into dummy_table(primary_key_id,self_fk) 
values(1,null); 
-- And so on 

をそれがするために、次のようになります。

Insert into dummy_table(primary_key_id,self_fk) 
values(1,null); 
Insert into dummy_table(primary_key_id,self_fk) 
values(2,1); 
Insert into dummy_table(primary_key_id,self_fk) 
values(4,2); 
-- And so on 

So whilsの要素を作成してくださいデータを挿入スクリプトとしてエクスポートすると、挿入順序が正しくありません。結果として、私は外来キーがまだ存在しないというエラーメッセージを受け取ります。したがって、データをエクスポートして、SQL Developerに自己参照の外部キー順序を念頭に置き、階層に従って挿入を作成する必要があることを伝えるオプションはありますか?

答えて

0

あなたが望む順序で行を取り出したり、外部キーの制約を無効にしてスクリプトを開始したりするには、クエリで順序を追加する必要があります。

終了後に再度有効にすることを忘れないでください。

関連する問題