ADODB CommandTimeout 在经典中执行存储过程 asp
ADODB CommandTimeout executing stored procedure in classic asp
我在一个非常古老的项目中遇到了问题。长时间的数据库进程中出现超时异常。
这是初始代码
Set objCmd = Server.CreateObject("ADODB.Command")
objCmd.ActiveConnection = Common_CnxStr
objCmd.CommandText = "Db.SP_Name"
objCmd.CommandType = adCmdStoredProc
/*some query parameters are added here*/
objCmd.Execute
这会运行 90 秒,然后因超时异常而失败。我怎样才能将超时时间增加到例如 5 分钟。
我试图通过在我的代码中添加行 objCmd.CommandTimeout
来延长超时
Set objCmd = Server.CreateObject("ADODB.Command")
objCmd.CommandTimeout = 300
objCmd.ActiveConnection = Common_CnxStr
objCmd.CommandText = "Db.SP_Name"
objCmd.CommandType = adCmdStoredProc
/*some query parameters are added here*/
objCmd.Execute
但这不起作用,90 秒后我仍然有异常。我什至尝试这样做
Server.ScriptTimeout = 300
Set objCmd = Server.CreateObject("ADODB.Command")
objCmd.CommandTimeout = 300
objCmd.ActiveConnection = Common_CnxStr
objCmd.ActiveConnection.CommandTimeout = 300
objCmd.CommandText = "Db.SP_Name"
objCmd.CommandType = adCmdStoredProc
/*some query parameters are added here*/
objCmd.Execute
但这并没有改变什么。请帮忙。
尝试在 ASP 代码的开头添加:
<%
Server.ScriptTimeout = 300 ' 5 minutes!
%>
无论如何,如果是性能问题,你应该让DBA去检查数据库
另请参阅:
https://technet.microsoft.com/en-us/library/bb632464.aspx
我在一个非常古老的项目中遇到了问题。长时间的数据库进程中出现超时异常。
这是初始代码
Set objCmd = Server.CreateObject("ADODB.Command")
objCmd.ActiveConnection = Common_CnxStr
objCmd.CommandText = "Db.SP_Name"
objCmd.CommandType = adCmdStoredProc
/*some query parameters are added here*/
objCmd.Execute
这会运行 90 秒,然后因超时异常而失败。我怎样才能将超时时间增加到例如 5 分钟。
我试图通过在我的代码中添加行 objCmd.CommandTimeout
来延长超时Set objCmd = Server.CreateObject("ADODB.Command")
objCmd.CommandTimeout = 300
objCmd.ActiveConnection = Common_CnxStr
objCmd.CommandText = "Db.SP_Name"
objCmd.CommandType = adCmdStoredProc
/*some query parameters are added here*/
objCmd.Execute
但这不起作用,90 秒后我仍然有异常。我什至尝试这样做
Server.ScriptTimeout = 300
Set objCmd = Server.CreateObject("ADODB.Command")
objCmd.CommandTimeout = 300
objCmd.ActiveConnection = Common_CnxStr
objCmd.ActiveConnection.CommandTimeout = 300
objCmd.CommandText = "Db.SP_Name"
objCmd.CommandType = adCmdStoredProc
/*some query parameters are added here*/
objCmd.Execute
但这并没有改变什么。请帮忙。
尝试在 ASP 代码的开头添加:
<%
Server.ScriptTimeout = 300 ' 5 minutes!
%>
无论如何,如果是性能问题,你应该让DBA去检查数据库
另请参阅: https://technet.microsoft.com/en-us/library/bb632464.aspx