循环所有数据库执行脚本

这里仅仅提供一个事例,抛砖引玉,如果对您起到丁点作用,那是在下的荣幸

select name into #dbname from  sys.databases  where name like 'edb_a%' and name not like '%_dw'
select name,ROW_NUMBER() over (order by name asc) from #dbname 
declare @i int
set @i=1
while @i<(select COUNT(*) from #dbname)
begin
select COUNT(*) from #dbname where ROW_NUMBER=@i
select DB_NAME();
set @i=@i+1
end
declare @dbname nvarchar(20)
declare maycursor cursor for 
select name from #dbname
open maycursor
fetch next from maycursor into @dbname
while(@@FETCH_STATUS=0)
begin
exec ('use '+@dbname+' select DB_NAME()')
fetch next from maycursor into @dbname
end
close maycursor
deallocate maycursor
原文地址:https://www.cnblogs.com/jinshaohua/p/5709826.html