业务描述:
要生成报表,由于涉及的表较多,并且业务较复杂,所以每操作一步就把操作后的结果存储为临时表,后一步调用前面的临时表。 如:
存储过程1(名字为sp1)
create proc sp1
as
select * into t1 from (.......查询语句)
存储过程2(名字为sp2)
create proc sp2
as
select * into t2 from ( select * from t1 .......查询语句) ... 总共将近有十几个存储过程
在VB中调用
dim cmd as adodb.command,conn as adodb.connection set conn=new connection
conn.connectString='数据库连接串'
conn.open
set cmd=new command
cmd.ActiveConnection = conn
cmd.CommandType = adCmdStoredProc str(1)="sp1"
str(2)="sp2" ......
str(10)="sp10"
for i=0 to 10
cmd.CommandText = strProcName(i)
cmd.Execute
next
循环执行到第四五步时,提示“超时已过期”,请问是什么原因引起的错误?如何解决? 希望大家共同来讨论!
要生成报表,由于涉及的表较多,并且业务较复杂,所以每操作一步就把操作后的结果存储为临时表,后一步调用前面的临时表。 如:
存储过程1(名字为sp1)
create proc sp1
as
select * into t1 from (.......查询语句)
存储过程2(名字为sp2)
create proc sp2
as
select * into t2 from ( select * from t1 .......查询语句) ... 总共将近有十几个存储过程
在VB中调用
dim cmd as adodb.command,conn as adodb.connection set conn=new connection
conn.connectString='数据库连接串'
conn.open
set cmd=new command
cmd.ActiveConnection = conn
cmd.CommandType = adCmdStoredProc str(1)="sp1"
str(2)="sp2" ......
str(10)="sp10"
for i=0 to 10
cmd.CommandText = strProcName(i)
cmd.Execute
next
循环执行到第四五步时,提示“超时已过期”,请问是什么原因引起的错误?如何解决? 希望大家共同来讨论!
cnn1.ConnectionTimeout = 0
或者就设置时间长点
cnn1.ConnectionTimeout = 600
conn.begintrans
cmd.CommandText = strProcName(i)
cmd.Execute
conn.committrans
next