• ベストアンサー

DB間でデータをコピーしたい

DB間でデータをコピーしたいと考えています。 DataTableを使う方法とDataReaderを使う方法を思いつきました。 前者はSQL文によってはメモリの消費量が恐ろしいことになるので使いたくありません。 後者は安全なSQL文の生成ができるメソッドを作成できる自信が有りません。 .NETにこういったニーズを満たせるメソッドは無いものでしょうか? 環境は OS:Windows Vista IDE:Visual Studio 2005 コピー元:MySQL 5.0 コピー先:SQL Server 2005 です。

質問者が選んだベストアンサー

  • ベストアンサー
  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

> DataTableを使う方法とDataReaderを使う方法を思いつきました。 いずれにしろ、SQLで1行ずつINSERTするのであれば、データが多量のときに時間がかかりすぎます。 BULK INSERTなどで、一括で移行するべきでしょう。 > .NETにこういったニーズを満たせるメソッドは無いものでしょうか? SqlBulkCopy.WriteToServer(IDataReader)

参考URL:
http://www.sqlteam.com/article/use-sqlbulkcopy-to-quickly-load-data-from-your-client-to-sql-server
izayoimizuki
質問者

お礼

報告が遅くなって申し訳ありません。 ありがとうございます。 うまくいきました。