当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP 3.0高级编程(四十)

ASP
SQL数据操作基础(中级) 6
SQL数据操作基础(中级) 7
SQL数据操作基础(中级) 8
SQL数据操作基础(中级) 9
SQL数据操作基础(中级) 10
XML DOM介绍和例子(一)
XML DOM介绍和例子(二)
XML DOM介绍和例子(三)
ADO 光 标 基 础 (1)
ADO 光 标 基 础 (2)
SQL语言快速入门之三
ASP+学习笔记(一)
ASP+学习笔记(二)
ASP+学习笔记(三)
ASP+学习笔记(四)
ASP+学习笔记(五)
ASP+配置 — ASP+配置概念(一)
Microsoft 脚本编码器(4) --- 编码示例
VPN技术详解(上)
VPN技术详解(中)

ASP 3.0高级编程(四十)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 34 ::
收藏到网摘: n/a

  8.5.1 Errors集合
       Errors集合包含由单个ADO命令的执行而引起的每一个错误的Error对象。使用Errors集合的原因是由于在一个命令的执行过程中,可能会引起多个错误,OLE DB提供者需要提供一种方式通知客户方已有多个错误发生。
       关于Errors集合有两个重要的地方需要注意:
       · 每次执行ADO命令,如果发生错误,就清空错误集,同时代之以新的错误内容。当然,如果没有错误发生,Errors集合不会受到影响。所以,即使ADO命令成功执行,这个集合中也可能含有错误信息。
       · OLE DB提供者可能会将包含信息的消息或警告装入Errors集合,错误号为0。所以不能只检查集合中的错误号而假定错误已经发生。比如,使用ODBC提供者与SQL Server连接,可能会得到一个“错误”,告知缺省的数据库已经改变了。
       如果回头看一下本章开始讲到的对象模型,可能会发现Errors集合只能由Connection对象访问。读者可能会觉得奇怪,如果不显式地创建一个Connection对象,如何访问Errors集合?Recordset对象有一个ActiveConnection属性,含有当前记录集的Connection对象,这意味着可以这样得到Errors集合:
       rsAuthors.ActiveConnection.Errors
       如果想看发生的全部错误,则需要遍历整个Errors集合:
       For Each errAuthors In rsAuthors.ActiveConnection.Errors
              ' Display error
       Next
       为了显示一些合理的错误信息,需要确切知道在Errors集合中到底有些什么。
       Error对象包含表8-5所示的属性:
表8-5  Error对象的属性及说明
属 性
说 明

Number
ADO错误号

NativeError
从数据提供者获得的错误号

SQLState
连接到SQL数据库时,5位的SQL状态代码

Source
引起错误的对象

Description
错误说明文本

       这意味着循环过程现在可以变成这样:
       For Each errAuthors In rsAuthors.ActiveConnection.Errors

              Response.Write "Number: " & errAuthors.Number & _
                                    "<BR>NativeError: " & errAuthors.NativeError & _
                                    "<BR>SQLState: " & errAuthors.SQLState & _
                                    "<BR>Source: " & errAuthors.Source & _
                                    "<BR>Description: " & errAuthors.Description & _
                                    "<P>"
              Next

8.5.2 ASP页面中的ADO错误
       在第4、7章,我们研究了ASP的错误,以及如何简洁并彻底地处理这些错误。ASP 3.0的一个新特征就是自定义错误页面,但这对于ADO确实用处不大,因为脚本中的变量无法传入自定义的错