ASP应用进阶 ASP Error对象的相关知识(7)_ASP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:实例详解ASP中断开记录集的使用方法
我们在使用ASP 内置的ADO组件进行数据库编程时,通常是在脚本的开头打开一个连接,并在脚本的最后关闭它,但是就较大脚本而言,在多数情况下连接打开的时间要比它需要打开的时间长得多。因此为

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方法不被支持,这是一个废的属性在vb里面.jscript的支持,要研究的去catch.

值得注意的是要使用err对象的时候,必须加上OnErrorResumeNext,原来越过asperror对象的异常抛出.

在链接数据库的时候可以使用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对象做点事情.

分享:请注意!常见的ASP脚本攻击及防范技巧
由于ASP的方便易用,越来越多的网站后台程序都使用ASP脚本语言。但是, 由于ASP本身存在一些安全漏洞,稍不小心就会给黑客提供可乘之机。事实上,安全不仅是网管的事,编程人员也必须在某些安全

共7页上一页1234567下一页
来源:模板无忧//所属分类:ASP教程/更新时间:2008-08-22
相关ASP教程