I am trying to automate a Log Shrink File for all databases on our SQL Server (2005). I have a script that works to a fashion but I am having problems with one command.
Declare @database_name varChar(50),@database_name_temp varChar(54) Declare database_name_CURSOR CURSOR FOR select name from sys.sysdatabases where dbid >4 order by name OPEN database_name_CURSOR FETCH NEXT FROM database_name_CURSOR into @database_name While @@FETCH_STATUS = 0 Begin Set @database_name_temp= @database_name + '_Log' Use @database_name DBCC ShrinkFile (@database_name_temp,10) Backup log @database_name with Truncate_only DBCC ShrinkFile (@database_name_temp,10) FETCH NEXT FROM database_name_CURSOR into @database_name End Close database_name_CURSOR; Deallocate database_name_CURSOR
The problem is with the command Use @database_name
the error message I get is
Msg 102, Level 15, State 1, Line 8
Incorrect syntax near '@database_name'.
If I substitute for a real Database name it works for that database (but no others obviously)
Thanks
Taggs



Help

Back to top








