データベースの移行作業を行っています。MSSQLのデータベースをMySqlデータベースにコピーする必要があります。テーブル構造をMSSQLからMySqlデータベースにコピーするための小さなJavaユーティリティを思い付くことができました。ここで、すべてのデータをMSSQLからMySqlにコピーする必要があります。Javaでresultsetを使用してテーブルからすべてのデータを取得しようとしましたが、データのごく一部しかフェッチできませんでした。テーブルから結果セット、または私が使用できる可能性のある他の同様の構造にすべてのデータを取得して、同じデータをmysqlDbに挿入するための代替ソリューションはありますか?テーブルには25,00,000を超えるレコードがあります。
質問する
429 次
2 に答える
1
JDBCの結果セットでは、原則として、大きなクエリ結果のエンティティを反復処理できる必要があります。
ただし、Javaを経由することは、最も効率的なアプローチではない場合があります。ファイルへの一括エクスポートと一括インポートが最適な方法かもしれません。MSにはエクスポートを実行できるbcpユーティリティがあるようです。
于 2009-09-16T07:14:25.760 に答える
0
説明したようなデータベース移行を実現するための最良の方法は、ETLツールを使用することです。ETLの概要は次のとおりです。
http://en.wikipedia.org/wiki/Extract,_transform,_load
JDBCでこれを実行できない理由はないので、自分でローリングするように設定されている場合は、「データのごく一部しかフェッチできなかった」について詳しく説明してください。
- 実行しているクエリは何ですか?
- 例外が発生していますか?
- MS-SQLへの接続に使用しているJDBCドライバーはどれですか。
于 2009-09-16T07:25:27.143 に答える