【发布时间】:2017-12-01 20:28:00
【问题描述】:
我有一个如下的 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。
【问题讨论】:
-
主要问题是什么?您试图调用 dbcc checkdb 而不是当前数据库或打印结果?
标签: sql sql-server sqlresultsetmapping