javaとOracleを使用してデータベースDB1のテーブルAからデータベースDB2のテーブルBにデータを移行しようとしています。1つのデータベースの1つのテーブルから別のデータベースの別のテーブルにデータを移動
私はJava 1.8を使用しています。私のソースデータベースにはOracle 11gがあり、接続先データベースにはOracle 12cがあります。
ソースデータベースに宛先データベースの構造(scema、tables)を作成しました。そして、javaのsource *クエリから* insert into dest select *を使用することによって、マイグレートします。ソーステーブルのレコード数が何百万というように、時間がかかります。後でこのマイグレーションされたデータを実際の宛先にエクスポートしたいので、時間もかかるでしょう。
私の知っている限り..私は2接続で準備されたステートメントを使用することはできませんと思います。私のテーブルは400から500のカラムで構成されているので、多くのカラムをプリペアドステートメントでバインドするのは良い考えではありません。また、ソーステーブルとデスティネーションテーブルの構造も異なります。私は以前のフィールドをselect * from tbl queryに挿入する新しいフィールドにマップしたプロパティファイルでフィールドマッピングを行いました。私のソーステーブルのように、カラムはcol0001であり、宛先の対応するカラムはref_noです。これも私が準備された声明を使うことを許さないでしょう。しかし、Javaのステートメントを使用することによって、私は単一のdBでデータを移行することができます。
私もdblinkで試しました。しかし、clobデータ型の場合、私はデータを移行することができません。
これまで誰かがこのようなことをした場合、解決策を提供してください。一回限りのコピーについては
リモート表から選択されたLOBロケータを使用できないため、エラーが発生します。 –