作者:潇湘V烟雨 | 来源:互联网 | 2023-05-16 09:14
ERR对象Err对象使用的时候不需要创建实例,就是说用的时候随便拿来使用,就像session一样,不需要像ADODB对象使用的时候要先用SetconnServer.CreateObjec
ERR对象
Err对象使用的时候不需要创建实例,就是说用的时候随便拿来使用,就像session一样,不需要像ADODB对象使用的时候要先用Set cOnn=Server.CreateObject("ADODB.Connection")语句来创建实例。 它返回一个错误代码,但是Err!=Err.Number。可以用Clear方法清除,以利于下次使用.它主要的是个Description方法,返回的是简要错误说明,这里一个很经典的例子:
代码: |
<%@ LANGUAGE="Vbscript" %> <%Response.Buffer = True On Error Resume Next %> <% s="sa" response.write(Int(s)) If Err.Number <> 0 Then Response.Clear response.write"发生错误:"%> 错误 Number: <%= Err.Number %> 错误信息: <%= Err.Description %> 出错文件: <%= Err.Source %> 出错行: <%= Err.Line %> <%= Err %> <%End If%> |
值得注意的是,asp的vb编写的里面line方法不被支持,且要使用err对象的时候,必须加上On Error Resume Next,原来越过asperror对象的异常抛出.
ERROR对象
在链接数据库的时候可以使用error对象: Count属性:用来统计Errors集合的数目,Item方法:用来指定特定的一个错误,语法为Error.Item(number),其中number为一数字。由于Item为默认的方法,所以Error(number)的写法与前面的写法是等价的。下面是一段程序。用来列举Error对象:
代码: |
<% On Error Resume next Set cOnn=Server.Cr&#101;ateObject("ADODB.Connection") Dim i,your_databasepath:your_databasepath="no.mdb" cOnnstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath(your_databasepath)&"" conn.open connstr if conn.errors.count<>0 then response.write "链接数据库失败 " for i =0 to conn.errors.count-1 response.write conn.errors.item(i)&" " response.write Err.Description next else response.write "链接数据库成功" end if conn.close %> |
和err对象没啥差别,看到比较结果了么?直接用err对象更简单.
一般建议在调试的时候用asperror对象(就相当于不处理,出错是网页上显示的默认信息就是),就是把On Error Resume next 这行rem了,就默认用asperror抛出了.在正式运行的时候,除非特殊要求,可以使用err对象做点事情