Cursor Template
The below code is a basic template to handle running a cursor statement against each database on a server.
DECLARE @DBName NVARCHAR(50)
DECLARE db_cursor CURSOR FOR
SELECT name
FROM [master].[sys].[databases]
WHERE name NOT IN ('master','model','msdb','tempdb')
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @DBName
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE @SQL NVARCHAR(MAX)
SET @SQL =
'
SELECT *
FROM [+@DBName+].[dbo].[Table]
'
EXEC sp_executesql @SQL
FETCH NEXT FROM db_cursor INTO @DBName
END
CLOSE db_cursor
DEALLOCATE db_cursor