ERR对象
err对象使用的时候不需要创建实例,就是说你要用的时候随便拿来使用,就像session一样,不需要像ADODB对象使用的时候Setconn=Server.CreateObject("ADODB.Connection")来创建实例,它返回一个错误代码,但是Err!=Err.Number,可以用Clear方法清除,以利于下次使用.它主要的是个Description方法,返回的是简要错误说明,这里一个很经典的例子:
程序代码<%@LANGUAGE="VBscript" %>
<%Response.Buffer= True
OnError Resume Next
%>
<%
s="sa"
response.write(Int(s))
IfErr.Number <> 0 Then
Response.Clear
response.write"发生错误:"%>
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
错误Number: <%= Err.Number %><br/>
错误信息:<%= Err.Description %><br/>
出错文件:<%= Err.Source %><br/>
出错行:<%= Err.Line %><br/>
<%=Err %>
</BODY>
</HTML>
<%EndIf%>
运行一看,呓,Err.Line为空,为啥?因为asp的vb编写的里面line方法不被支持.值得注意的是要使用err对象的时候,必须加上On Error Resume Next,原来越过asperror对象的异常抛出.
ERROR对象
在链接数据库的时候可以使用error对象:Count属性:用来统计Errors集合的数目,Item方法:用来指定特定的一个错误,语法为Error.Item(number),其中number为一数字。由于Item为默认的方法,所以Error(number)的写法与前面的写法是等价的。下面是一段程序。用来列举Error对象:
程序代码<%
OnError Resume next
Setconn=Server.CreateObject("ADODB.Connection")
Dimi,your_databasepath:your_databasepath="no.mdb"
connstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&server.mappath(your_databasepath)&""
conn.openconnstr
ifconn.errors.count<>0 then
response.write"链接数据库失败<hr/>"
fori =0 to conn.errors.count-1
response.writeconn.errors.item(i)&"<hr>"
response.writeErr.Description
next
else
response.write"链接数据库成功"
endif
conn.close
%>
没啥差别和err对象,看到比较结果了么?寒死了,直接用err对象简单.
一般建议在调试的时候用asperror对象(就相当于不处理,出错是网页上显示的默认信息就是),就是把OnError Resume next 这行rem了,就默认用asperror抛出了.在正式运行的时候,除非特殊要求,可以使用err对象做点事情.
这里使用了Raise方法来完成错误信息显示。Raise方法的第一个参数是我们正在产生错误的代号。在这种情况中它是一个自定义错误,因为我们使用vbObjectError,进入自定义错误范围。第二个参数存储应用程序的名字或者正在调试错误的组件名称。第三个参数是关于错误的描述。
Err对象为你提供了出现错误类型的具体信息,也可以使用Err对象来消除代码中的错误,或者产生自定义的错误信息,我们可以像下面这样来获取Err对象的属性:If Err.Numbei = 11
'take some divide by zero action
Else
ErrorFlag = Err.Numbei & ":"& Err.Description
End If
或者我们可以把常见的错误信息返回给调用程序:
If Not IsNumeric(CategoryID) Then
Err.Raise vbObjectError + 1,"SchoolComponent Server",_
"CategoryID must be numeric."
End If
Err对象
项目名称 描述 Clear 明确地删除包含在Err对象里的错误 Description 包含了关于错误描述的文本信息 HelpContext 在帮助文件里,显示关于错误的更多的主题 HelpFile 到包含关于错误的更多信息的帮助文件的路径 Source 产生错误的对象或应用程序的名称