经典ASP:错误停止

时间:2012-07-26 13:58:17

标签: asp-classic error-handling

我有一个ASP页面,在显示页面之前会在开头运行两个SQL插入语句。如果我遇到主键冲突(即插件已经在那天运行),我只想继续。

我的代码基本上是:

on error resume next
' insert statements

一旦执行了语句,我想恢复默认的错误行为,其中页面因错误消息而死亡。

是否有命令,例如“on error stop”,“on error die”,或“on error default”,或者将错误处理重置为默认行为?

1 个答案:

答案 0 :(得分:4)

如果您希望它在不使用任何类型的自定义错误处理程序的情况下抛出错误,请使用:

On Error GoTo 0

您可以在快速示例ASP页面中测试它,其中包含以下内容:

<% Language="VBScript" %>

<% Response.Write "Hello" %>

<% On Error Resume Next
   Dim rs
   SET rs = Server.CreateObject("ADODB.RecordSet")

   'On Error Goto 0
   rs.MoveNext

%>

<% Response.Write "Bye" %>

On Error Goto 0注释掉后,Bye将正常写入。启用On Error Goto 0后,您将收到以下错误:

  

ADODB.Recordset错误'800a0e78'

     

关闭对象时不允许操作。