您的位置:首页 > 编程语言 > ASP

Asp之Error对象的妙用

2008-04-24 09:30 330 查看
这几天一直忙于站点改版的工作,昨天刚刚用ASP写好的表结构生成文件CreateStruct.asp,在操作过程中很有可能会再次刷新此页面,而导致错误.为了有一个正确易读的反馈信息,我对Err做了检测判断.

要求:

防止刷新表结构生成文件,继续向A表添加记录

思路:

生成一数据表A,又向这A表中添加了一条记录.为了防止继续在已存在的表中进行操作,有一个良好的错误反馈.我检测Error对象是否有报错,来判断是输出正确还是错误的信息提示.然而已存在的表A再继续执行创建A表的操作会为错误提示,而向已存在的表A中添加记录则不会有错误提示.所以我想到了检测A表中是否存在了记录来输出提示信息.检测A表中是否已存在记录,使用语句Rs.Eof And Rs.Bof ,为真则添加记录,为假则创建错误信息

代码:


SQL="Select * From ["&P_PrefixName&"NotDownload]"


Set Rs=Server.CreateObject("ADODB.Recordset")


Rs.Open SQL,Conn,1,3


If Rs.Eof And Rs.Bof Then


Rs.AddNew


Rs("NotDownload").AppendChunk(chrB(asc("<")) & chrB(asc("%")))


Rs.Update


Else


Err=True


Err.Description="表 'PX_NotDownload' 已存在记录"


End If


Rs.Close:Set Rs=Nothing


Call OutJudge("添加防下载表长二进制数据") '判断是否存在错误信息,做出不同的输出样式
'*****************************


'调用错误信息输出过程
'*****************************


Sub OutJudge(ByVal TipCont)


If Err.Number<>0 Then


ResultStr=Replace(ResultStr,"{$ResultState}","<font color=""#CC0000"">"&TipCont&"失败</font>")


Response.Write ResultStr


Response.Write "<div class=""errDescription"">"&Err.Description&"</div>"


Response.Flush


Err.Clear


Else


ResultStr=Replace(ResultStr,"{$ResultState}","<font color=""#00AA00"">"&TipCont&"成功</font>")


Response.Write ResultStr


Response.Flush


End If


End Sub
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: