0

ネストされたフォルダー内のすべてのログ ファイルを圧縮できるようにしたいと考えています。この同じスクリプトを使用してデータベースを変更しましたが、縮小コマンドに問題があります。

このスクリプトを実行すると、sys.database_files にデータベースが見つからないというエラーが表示されます。したがって、私のデータベースは sys.database_files で別の名前になっているか、単に追加されていないと推測しています。手伝ってくれますか?

for /r /d %%i in (*) do (
ECHO  %%i\MY_DB.mdf
osql -S LOCALHOST\SQLEXPRESS -U johan -P johan_j-d master -Q "EXEC sp_attach_db 'MY_DB', '%%i\MY_DB.mdf', '%%i\MY_DB_log.ldf';"
osql -S LOCALHOST\SQLEXPRESS -U johan -P johan_j -d MY_DB -Q "DBCC SHRINKFILE (N'MY_DB_log',0,TRUNCATEONLY);"
osql -S LOCALHOST\SQLEXPRESS -U johan -P johan_j -d master -Q "EXEC sp_detach_db 'MY_DB';"
)
4

1 に答える 1

0

問題が解決しました。物理ファイル名ではなく、論理ファイル名を使用する必要がありました。

于 2013-03-01T20:16:34.700 に答える