我有一个如下的 sql 脚本:
declare db_list cursor for
select name From sys.databases
open db_list
declare @var varchar(MAX)
fetch next from db_list into @var
print @var
while (@@FETCH_STATUS = 0)
BEGIN
EXEC('use '+@var)
print 'Checking database '+@var
print '---------------------------------------------'
dbcc checkdb
fetch next from db_list into @var
END
close db_list
deallocate db_list
我希望一一得到结果。例如,当@var 设置为“master”时。它应该显示:
Checking database master
然后它应该为 master 显示 'dbcc checkdb' 结果。
相反,结果会挂起未定义的时间,然后突然显示所有数据库的所有结果。我为此使用 MS SQL Server 2008。