设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2033|回复: 2
打印 上一主题 下一主题

[Access本身] [ZT] On Error Resume Next和On Error GoTo 0区别

[复制链接]
跳转到指定楼层
1#
发表于 2009-1-4 08:17:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
来自:http://blog.vwen.com/read.php?10&guid=4

有写过asp代码的人都知道,很多程序都喜欢在数据库连接的地方加入一行On Error Resume Next,这样当连接数据库出错的时候,可以很友好的提示一段特殊的字符来提醒访客。

On Error Resume Next在asp中的作用是如果发生错误就继续执行出错语句下面的那句。按正常的话,如果程序一出错,asp就或会报告错误代码和错误行数等并停止运行。错误并不严重,不会产生严重影响,你可以在可能出错的语句前面加上这句。但是如果错误很严重,会影响到后面的语句执行,就建议不要使用这段语句了。

对于初学程序的朋友,建议先去掉或注释掉这句代码再开发程序,等程序全部开发完成的时候再加上上去,这样可以防止恶意攻击网站的人看不到错误信息,也可以起到一定的保护作用。否则带着这语句开发,可能出现很多bug,这些都是对程序不负责的人所做的。

On Error GoTo 0 表示禁止当前过程中任何已启动的错误处理程序。使用这条语句会让系统不再沉默,一旦有错误发生就会提示错误,并结束脚本执行。假如你前面使用了On Error Resume Next容错代码,在当前不想他继续容错,你可以加上On Error GoTo 0,这样On Error GoTo 0之前的语句错误都将直接报错


举个简单例子

<%
on error resume next
dim i
i = 1/0
Response.Write "输出第一个内容"
on error goto 0
i = 1/0
Response.Write "输出第二个内容"
%>


这个例子的输出结果:
输出第一个内容
Microsoft VBScript 运行时错误 错误 '800a000b'

被零除

/d/index.asp,行 7
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2009-1-14 11:21:43 | 只看该作者

学习

学习[:32]
3#
发表于 2009-7-9 15:33:23 | 只看该作者
xuexi
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-13 19:07 , Processed in 0.129360 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表