すべて、givemデータベースから選択したテーブルを.csvファイルにエクスポートできるようにするエクスポートメカニズムを開発しました。bcp
またはを使用してこれを行うことができますsqlcmd
。大きなテーブル(> 1〜2GB)の場合、テーブルをユーザー指定のサイズ(たとえば、200MB)の事前定義されたいくつかの.csvファイルに分割したいと思います。
ユーザーが指定したサイズを構成する行数を確認するにはどうすればよいですか?これはsqlcmd
、次のようなコマンドを使用できるようにするためです
DECLARE @sql VARCHAR(8000);
SELECT @sql = 'sqlcmd -S' + @@SERVERNAME + ' -E -Q ' +
'"SELECT * FROM Ia.dbo.[Episode];" -o "F:\aaData\Test2.csv" -s"," -W';
EXEC master..xp_cmdshell @sql;
TOP N
正しい分割.csvサイズを取得する句を使用します。バッチ読み取りを使用して行をカウントする必要がある場合がありますか、それともこれを行うためのより良い方法がありますか?