DECLARE @SQL VARCHAR(1000) DECLARE @DB sysname --Creo un cursor para consultar el nombre de todas las bases de datos, excepto las de sistema DECLARE curDB CURSOR FORWARD_ONLY STATIC FOR SELECT [name] FROM sys.databases WHERE state = 0 AND Name NOT IN ('master','model','msdb','tempdb') ORDER BY [name] --Abro el cursor y por cada base ejecuto el stored procedure que actualiza las estadísticas OPEN curDB FETCH NEXT FROM curDB INTO @DB WHILE @@FETCH_STATUS = 0 BEGIN SET @SQL = 'USE [' + @DB +']' + CHAR(13) + 'EXEC sp_updatestats' + CHAR(13) PRINT @SQL EXEC (@SQL) FETCH NEXT FROM curDB INTO @DB END --Cierro y elimino el cursor CLOSE curDB DEALLOCATE curDB