我在SQL Server 2008 R2上创建了一个复杂的存储过程,此SP还包含一些用户定义的函数。那些UDF和SP本身在它们内部有一些while循环。
当我打电话给SP时,我想确定循环的次数。
我可以做任何改变吗?
答案 0 :(得分:0)
据我所知,SQL Profiler没有任何办法可以做到这一点。我要做的是创建一个临时表(假设您只对单个连接的迭代次数感兴趣)增加单个计数变量,然后您可以输出存储在该临时表中的值循环。
类似的东西:
create table #countTable
(
id int not null,
countvar int not null
)
go
insert into #countTable
select 1, 0
go
-- your stored proc call here
-- during your iterations at the end, call this:
update #countTable
set countvar = countvar + 1
where id = 1
go
-- ...your stored proc ends now you want the count
select countvar
from #countTable
where id = 1
go
我创建了一个id
字段,以防您有多个“计数器”。