大きなファイルから次のコマンドを使用してデータベースデータを復元しようとしています.sql
Type myfile.sql | sqlsmd –S server –U username –P password
次のエラーが発生します。
Sqlcmd: Error: Scripting error.
ファイルを開くことができません。十分なメモリがありません。
SQLCMD には「-i」inputfile パラメータもあります。これを使用することをお勧めします。ファイルを「入力」して出力をSQLCMDにパイプすることは、特にコマンドラインにファイルからの読み取りのネイティブサポートが含まれている場合、ファイルを実行するためのハックな方法です。これを試して:
sqlcmd –S server –U username –P password -i MyFile.sql
-i入力ファイルオプションを持つisqlを使用してみることができます-これは厄介なものを失います
Type myfile.sql |
使用している Sql のバージョンはわかりませんが、おそらく DTS/SSIS を使用してファイルを実行できます。そのアプローチを使用すると、ログを有効にして実際にどの行を確認できますか?失敗し、許容できる失敗行数のしきい値を設定します。
もう 1 つの方法は、management studio を使用してファイルを開いてから実行することです。
これを試して
@echo Server: %1
@echo Database: %2
@echo User: %3
@echo Password: %4
set ISQLCMD=SQLCMD -S %1 -d %2 -U %3 -P %4 -m1 -i