我希望能够收缩嵌套文件夹中的所有日志文件。我使用相同的脚本来修改数据库,但我遇到了收缩命令的问题。
当我运行此脚本时,我收到一条错误消息,指出它无法在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';"
)
答案 0 :(得分:0)
问题解决了。我本应该使用逻辑文件名而不是物理文件名。