用vb+sql2000做的一个库存系统,在执行conn.EXECUTE "My_P 参数1,参数2,参数3,参数4"
时出现“超时已过期”错误。(conn.ConnectionTimeout = 0)
存储过程My_P中大致如下:
Set @s='Insert Into My_T (F1,F2,F3...F20)
Select R1,R2,(子查询1),(子查询2),(子查询3),...(子查询18)
From TableR
Where ...参数1...参数4...'
EXEC (@s)
最后得出的表My_T大概有5000条记录,如果直接用查询分析器运行该存储过程需时不到2分钟。如果用游标循环(Select R1,R2 From TableR Where ...参数1...参数4...),逐条记录
查出F3至F20,然后插入到表My_T中,那时间就更长,大概50分钟!请教各位高手,这该如何处理?谢谢!
时出现“超时已过期”错误。(conn.ConnectionTimeout = 0)
存储过程My_P中大致如下:
Set @s='Insert Into My_T (F1,F2,F3...F20)
Select R1,R2,(子查询1),(子查询2),(子查询3),...(子查询18)
From TableR
Where ...参数1...参数4...'
EXEC (@s)
最后得出的表My_T大概有5000条记录,如果直接用查询分析器运行该存储过程需时不到2分钟。如果用游标循环(Select R1,R2 From TableR Where ...参数1...参数4...),逐条记录
查出F3至F20,然后插入到表My_T中,那时间就更长,大概50分钟!请教各位高手,这该如何处理?谢谢!
可能是你的程序代码有问题,不要说5000条,就是50000都么眼问题
===========================================
代码问题?为什么同一个存储过程在查询分析器运行没问题,vb调用就出问题?