信頼できるSQL Serverドライバのために純粋に.Net/C#コンソールアプリケーションとして書かれた小さなユーティリティスクリプトがあります.SQLサーバーDBでは70,000を超えるレコードが本質的に反復され、Linq Projection JObjectを呼び出し、JsonオブジェクトをHTTP経由でNoSQLデータベースに送信します。SQL Server上でExecuteReaderはどれほど怠惰ですか?
var command = sqlConnection.CreateCommand();
command.CommandText = "SELECT * FROM MotherFckinBigTable";
var reader = command.ExecuteReader();
int loopCount = 0;
while(reader.Read()) {
// convert reader to JSON object
// stringify json object
// webclient uploaddata to couchdb
}
}
私は戻って行くか、またはスキップする必要はありませんので、そのシンプルなスタートを反復処理を終了する、私はここでページングを使用していませんでしたか、LINQのかLLBLGen等。が、私はこの深刻な眉をひそめていると思いまして、レビューされればDBAは心臓発作を起こすでしょうか?あるいは、このシナリオではそれは受け入れられますか?これを念頭に置いてユーティリティスクリプトを作成してください。