存储结构如下:
alter proc testProc
@state int
begin
if @state=1
begin
select ...
end
else if @state=2
begin
select...
end
else
begin
select...
end
end
数据库执行 EXEC testProc 1 , EXEC testProc 2 , EXEC testProc 3都是秒出结果,但是程序调用一直超时,数据量极小,不到30条数据,设置了超时时间也无用,没到超时时间也是报错已超时。
后面排除发现是else if 的原因
改为
if @state=1
if @state=2
if @state=3
解决