Asp中err和error对象的属性详解及用法示例
一、ERR对象
err对象使用的时候不需要创建实例,就是说你要用的时候随便拿来使用,就像session一样。
不需要像ADODB对象使用的时候Setconn=Server.CreateObject(“ADODB.Connection”)来创建实例,它返回一个错误代码。
但是Err!=Err.Number,可以用Clear方法清除,以利于下次使用.它主要的是个Description方法,返回的是简要错误说明,这里一个很经典的例子:
程序代码:
<%@LANGUAGE="VBscript"%> <%Response.Buffer=True OnErrorResumeNext %> <% s="sa" response.write(Int(s)) IfErr.Number<>0Then 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对象的时候,必须加上OnErrorResumeNext,原来越过asperror对象的异常抛出。
二、ERROR对象
在链接数据库的时候可以使用error对象:
Count属性:用来统计Errors集合的数目。
Item方法:用来指定特定的一个错误,语法为Error.Item(number),其中number为一数字。
由于Item为默认的方法,所以Error(number)的写法与前面的写法是等价的。
下面是一段程序。用来列举Error对象:
程序代码:
<% OnErrorResumenext 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<>0then response.write"链接数据库失败<hr/>" fori=0toconn.errors.count-1 response.writeconn.errors.item(i)&"<hr/>" response.writeErr.Description next else response.write"链接数据库成功" endif conn.close %>
没啥差别和err对象,看到比较结果了么?直接用err对象简单。
一般建议在调试的时候用asperror对象(就相当于不处理,出错是网页上显示的默认信息就是),
就是把OnErrorResumenext这行rem了,就默认用asperror抛出了。
在正式运行的时候,除非特殊要求,可以使用err对象做点事情。