declare @xDatabase varchar(100), @xBackup varchar(125) declare db_cursor cursor for select name from sysdatabases where name not in('master', 'tempdb', 'model', 'msdb') and databasepropertyex(name, 'Status') = 'ONLINE' for read only open db_cursor fetch next from db_cursor into @xDatabase while(@@fetch_status = 0) begin set @xBackup = 'f:\mssql\backup\' + @xDatabase + '_full.bak' backup database @xDatabase to disk=@xBackup with init if(@@error = 0) begin backup log @xDatabase with truncate_only end fetch next from db_cursor into @xDatabase end close db_cursor deallocate db_cursor