DB2 V9.7 for Linux, UNIX, and Windows

DB2ResultSet 类

提供一种从数据库多向浏览数据行的可绑定流的方法。此外,DB2ResultSet 实例还可以插入、更新和删除行。

名称空间:
IBM.Data.DB2
组合件:
IBM.Data.DB2(在 IBM.Data.DB2.dll 中)

继承层次结构

System.Object
   System.MarshalByRefObject
      IBM.Data.DB2.DB2ResultSet

语法

[Visual Basic]
Public Class DB2ResultSet
[C#]
public class DB2ResultSet
[C++]
public class DB2ResultSet
[JScript]
public class DB2ResultSet

数据服务器限制

访问支持可滚动游标的数据服务器时,仅支持可滚动的 DB2ResultSet 实例。当前,这包括以下各项:
  • DB2® for Linux, UNIX, and Windows V9.1、V9.5、V9.7 和 V9.8 数据库
  • DB2 Universal Database™ V8、V9 和 V10(用于 z/OS®,通过 DB2 Connect™)
  • IBM® Informix® V11.10 和 V11.50

访问支持动态游标的数据服务器时,仅支持使用动态游标的可滚动 DB2ResultSet 实例。当前,这包括 DB2 UDB z/OS 版版本 8 和 DB2 z/OS 版V9.1。

为了访问三层环境中的可滚动游标,DB2 Connect 网关必须在运行 DB2 UDB Linux 版、UNIX 版和 Windows 版版本 8 或者 DB2 数据库 Linux 版、UNIX 版和 Windows 版V9。

如果使用数据服务器不支持的 DB2CursorTypeDB2ResultSetOptions 设置创建 DB2ResultSet 实例,那么 IBM Data Server Provider for .NET 会将 DB2ResultSet 实例降级到数据服务器将支持的最高级别。可通过检查下列属性来查看 DB2ResultSet 实例的游标类型及其他选项:
  • CursorType
  • Scrollable
  • Updatable
  • Sensitive
  • SkipDeleted

注释

DB2ResultSet 类使您能够在应用程序中部署数据行的可滚动和可更新流。这为使用 DB2DataReader 从数据服务器读取数据提供了一种灵活的替代方法。更重要的是,这为将 DataSetDB2DataAdapter 配合使用,以便将应用程序控件绑定至数据服务器提供了一种高性能的替代方法。

创建 DB2ResultSet 实例类似于创建 DB2DataAdapter:从连接的 DB2Command 实例,DB2Command.ExecuteResultSet 方法将返回 DB2ResultSet。可以在 DB2Command.ExecuteResultSet 方法中设置各种选项,以确定 DB2ResultSet 的功能。

限制: 如果应用程序将 DB2ResultSet 实例与静态游标配合使用,并且超出范围进行访存,那么可能会使 DB2 UDB 版本 8 数据服务器停止。为了避免发生 这种情况,请对 DB2 UDB V8 数据服务器应用 FP13。

示例

[C#] 以下示例演示如何从对其他应用程序所作的插入、更新和删除敏感的可滚动 DB2ResultSet 读取数据。

[C#]
  public static string getSalesData(DB2Connection conn)
  {
    string salesQuery = "SELECT * FROM SALES";
    string salesData = "";
    DB2Command cmd = new DB2Command(salesQuery, conn);
    DB2ResultSet salesRS = cmd.ExecuteResultSet(
      DB2ResultSetOptions.Scrollable |
      DB2ResultSetOptions.Sensitive |
      DB2ResultSetOptions.SkipDeleted);

    if (salesRS.Scrollable)
    {
      if (salesRS.ReadLast())
      {
        salesData = salesRS.GetDB2Date(0).ToString();
        salesData += ", " + salesRS.GetDB2String(1).ToString();
        salesData += ", " + salesRS.GetDB2String(2).ToString();
        salesData += ", " + salesRS.GetDB2Int32(3).ToString();
      }
    }

        return salesData;
  }

线程安全

此类型的任何公用静态(Visual Basic 中的 Shared)成员对于多线程操作都是安全的。 不保证任何实例成员均为线程安全。

版本信息

最近一次更新
本主题在 IBM DB2 V9.7 FP5 中进行了最近一次更新
.NET Framework 版本
支持版本:2.0、3.0、3.5 和 4.0