概要
SQLServerをメンテナンスするのに、SSMS(SQL Server Management Studio)を使うのが、定番だと思います。
ですが、本番DBからデータをスクリプト化して、デバックDBへ移して、という作業がデータ量の増加に従って徐々に辛くなってきました。
SSMSは、スクリプトのデバック機能を持っているので、実行が遅いしメモリを喰うのでしょう。
スクリプトを分割するなど騙し騙し作業していたのですが、sqlcmdを使えば、簡単に回避できました。
sqlcmdとは
sqlcmdは、SQLServerをコマンドラインから操作するユーティリティです。
たぶん、SSMSをインストールすると使えるようになります。
スクリプト投入例
SSMSでは、メモリオーバーになってしまう量のスクリプトを実行したい場合には、下記のようにパラメーターを指定して実行します。
認証などが必要な場合には、別途パラメーターを追加してください。
sqlcmd -S SERVERNAME -d SQLDBNAME -i C:\Users\user\Documents\data_20190304.sql
SSMSに比べて、スクリプトの分割の必要も無く、実行速度も速いです。